一、什么是Node
- 官方称为Node,民间为NodeJS、Node.js等。
- Node实现语言为javascript,符合:高性能、事件驱动、没有历史包袱。
- Node命名实际意义:实际为一个web服务器,快速、可伸缩的网络应用平台,Node即为网络中的一个节点。
- Node结构:Javascript Chrome V8浏览器内核底层
- Node特点:
- 异步I/O,通俗点说就是Ajax的执行过程,可让后续代码马上执行,而不会让目前的请求导致后续操作延时;
- 事件与回调函数,我们可以在事件操作方法携带方法进去,从而让代码关注在业务点上
- 单线程
等等
Node是CMD(CommonJS - 异步通信模块)规范的实现,主语CMD规范是什么东西,可以到网上进行搜索,目前很多解释,最主要的就是AMD与CMD的比较,这里就不多说了。
总之,如果你进行开发学习Node,需要注意就是:异步IO与事件回调,如果你还按照之前开发java或C++那样的想法,那么你在这里会遇到很多坑。。。
Node官网:https://nodejs.org/
二、NodeJS安装配置
2.1在window下安装Node
前往下载地址:https://nodejs.org/download/ ,看到如下图:选择windows系统的32位还是64位
这里windows有两种安装方法,一种通过msi安装文件,另外一种是通过node.exe执行文件,两个都可以,前者只需要点击next就Ok,无需配置环境变量等,另外一个是需要配置环境变量,当前如果你想在同一台电脑上安装不同版本的node,也是可以的,运行。
安装成功,运行cmd,输入命令: node –v
温馨提示:有些人不懂如何查看系统是32位还是64位,右键我的电脑属性,弹出属性窗口
2.2在Linux下安装Node
关于在Linux下,安装node,有比较简单的方法,主要在CentOS6中尝试过,在下载地址中下载tar.gz包,在自己定义的文件夹运行解压命令:tar –zxvf xxxx.tar.gz,然后cd到该文件夹下面的bin文件夹中,接着运行命令node -v ,看到node的版本即可。如果需要将node变为全局命令,需要运行一下命令:
ln -s /home/kun/mysofltware/node-v0.10.28-linux-x64/bin/node /usr/local/bin/node
ln -s /home/kun/mysofltware/node-v0.10.28-linux-x64/bin/npm /usr/local/bin/npm
2.3关于npm
学习Node就不得不学习npm,主要有以下介绍:
2.3.1 npm是什么
NPM的全称是Node Package Manager,如果你熟悉ruby的gem,Python的PyPL、setuptools,PHP的pear,那么你就知道NPM的作用是什么了。没错,它就是Nodejs的包管理器。Nodejs自身提供了基本的模块。但是在这些基本模块上开发实际应用需要较多的工作。所幸的是笔者执笔此文的时候NPM上已经有了5112个Nodejs库或框架,这些库从各个方面可以帮助Nodejs的开发者完成较为复杂的应用。这些库的数量和活跃也从侧面反映出Nodejs社区的发展是十分神速和活跃的。下面我将介绍安装NPM和通过NPM安装Nodejs的第三方库,以及在大陆的网络环境下,如何更好的利用NPM。
2.3.1 npm安装与配置
Windows:下载源码:https://github.com/isaacs/npm/tags
在目录下输入命令:node cli.js install –gf
检查:npm -v
Linux下:最新版本的node下载中已经包含了npm了,如果你的是比较古老的版本,请使用下面命令:
curl http://npmjs.org/install.sh | sh
Ok,安装完毕。
2.3.2 npm常用命令
- npm install [module] [options]:安装node_mudule,后面带的参数有 –g:全局安装
- npm view [module] [options]:查看node模块下package.json,后面参数:dependencies为依赖包,repository.url为源文件地址等
- npm list:查看当前目录下的node包
- npm help:查看npm帮助
- npm update moduleName:更新node模块
- npm uninstall moudleName:卸载node模块
- npm init:会引导你创建一个package.json文件,包括名称、版本、作者这些信息等
2.3.3 npm更新
输入:npm update –g,自动更新
2.3更新node版本
先更新npm版本,接着安装n模块,命令为:npm install n –g,(吐槽下:n模块就是这么短的命名。。。)。
接着就是利用n去安装各种版本的node,实例如下:
n latest:最新版本,
n stable:最新稳定版本
n v0.10.26:下载0.10.2版本的node
三、node-HelloWorld程序
3.1 纯输出HelloWorld
步骤一:创建app.js文件,代码如下:
console.log(“HelloWorld!”);
步骤二:运行 node app.js
得到输出:HelloWorld!
3.2 在浏览器输出HelloWorld
JS文件代码如下:
var http = require('http'); http.createServer( function(request, //客户端发来的请求, request 对象 response //我们利用response,向客户端发送回答 ){ //在控制台显示request对象 console.log(request); //总算完成 hello world 了。 response.end('Hello world!'); }).listen(888);//监听端口为888 console.log('Server start at 888'); |
运行 node app.js
在浏览器输入命令:http://localhost:888 ,得到HelloWorld!界面