Node.js 不是一种独立的语言,与 PHP、Python、Perl、Ruby 的“既是语言也是平台” 不同。Node.js 也不是一个 JavaScript 框架,不同于 CakePHP、Django、Rails。Node.js 更不是浏览器端的库,不能与 jQuery、ExtJS 相提并论。Node.js 是一个让 JavaScript 运行在服务 端的开发平台,它让 JavaScript 成为脚本语言世界的一等公民,在服务端堪与 PHP、Python、 Perl、Ruby 平起平坐。 虽然带js后缀,但是其实是对V8引擎进行优化封装的一个JavaScript平台。它可以让 JavaScript 脱离浏览器的束缚运行在一般的服务器环境下。
Node.js 中所谓的 JavaScript 只是 Core JavaScript, 不包含 DOM、BOM 。这是因为 Node.js 不运行在浏览器中,所以不需要使用浏览器中的许多特性。
Node.js是一个平台,这个平台可以解析JavaScript脚本语言 。类似浏览器,我们也可以理解为是平台,浏览器有很多,有谷歌,有IE等,不同的浏览器内核不一样,规范也就不一样,解析的脚本也存在兼容性。nodejs 也是一个平台,它同样可以解析JavaScript。脚本语言,不存在浏览器兼容问题,当然他不仅仅可以解析脚本 他也提供了一些系统api。比如数据库调用,文件读取,http请求等等。
Node.js 不运行在浏览器中, 所以也就不存在 JavaScript 的浏览器兼容性问题,你可以放心地使用 JavaScript 语言的所有特性。
Node.js不仅仅可以解析JavaScript代码(没有浏览器安全级别限制)。它也提供系统级别的API,比如文件读取,线程管理,网络请求等等。
Node.js 内建了 HTTP 服务器支持,也就是说你可以轻而易举地实现一个网站和服务器的组合。这和 PHP、Perl 不一样,因为在使用 PHP 的时候,必须先搭建一个 Apache 之类的HTTP 服务器,然后通过 HTTP 服务器的模块加载或 CGI 调用,才能将 PHP 脚本的执行结 果呈现给用户。而当你使用 Node.js 时,不用额外搭建一个 HTTP 服务器,因为 Node.js 本身 就内建了一个。这个服务器不仅可以用来调试代码,而且它本身就可以部署到产品环境,它 的性能足以满足要求
Node.js 最大的特点就是采用异步式 I/O 与事件驱动的架构设计。 Node.js 使用的是单线程模型,对于所有 I/O 都采用 异步式的请求方式,避免了频繁的上下文切换。Node.js 在执行的过程中会维护一个事件队 列,程序在执行时进入事件循环等待下一个事件到来,每个异步式 I/O 请求完成后会被推送 到事件队列,等待程序进程进行处理。
安装Node.js
Node.js的安装非常简单,我本身是mac环境,这里介绍下mac环境的安装步骤
1.下载环境
到官网页面即可下载,我下载的版本是v0.12.7
2.安装
安装很简单,直接点击下一步即可实现安装步骤。最后安装结束提示node 和npm的安装位置
node was installed at /usr/local/bin/node npm was installed at /usr/local/bin/npm
3.测试
打开终端,输入以下指令,如果能正常返回版本号,说明安装成功
daweideMacBook-Pro:Desktop dawei$ node -v v0.12.7 daweideMacBook-Pro:Desktop dawei$ npm -v 2.11.3