nodejs 是一个开放源代码、跨平台的、用于服务器端和网络应用的运行环境。Node.js应用用JavaScript语言写成,在Node.js运行时运行。Node.js采用Google的V8引擎来执行代码。本页面提供多种平台的 Nodejs 下载。
Node.js 4.0.0 首次将Node.js和io.js项目的代码库融合到了一起。
开发者们可以看到其对ES6特性的扩展支持,并且大多数都是默认启用的。
此外,Google Chrome和Node.js的JavaScript引擎——V8——也已经被升级到了与Chrome同步的4.5版本。
物联网开发者们也会对Node.js 4.0.0感到高兴,因为它将对ARM平台的支持扩展到了ARMv6、ARMv7、以及最新的64位ARMv8处理器。
Node 4将拥有18个月的长期支持(LTS),在这之后的12个月里,4.x分支还会带来安全性和严重漏洞的修复。
最后,Node.js 5.x的工作已在进行之中。
Node.js是建立在Chrome的V8 JavaScript引擎一个JavaScript运行库。
Node.js的使用事件驱动,非阻塞I/ O模型,使得它重量轻,效率高。
Node.js的包生态系统,NPM,是全球开源库的最大的生态系统。
Node.js使用Module模块去划分不同的功能,以简化应用的开发。
Modules模块有点象C语言中的类库。
每一个Node.js的类库都包含了十分丰富的各类函数,比如http模块就包含了和http功能相关的很多函数。
可以帮助开发者很容易地对比如http,tcp/udp等进行操作,还可以很容易的创建http和tcp/udp的服务器。
要在程序中使用模块是十分方便的,只需要如下:
在这里,引入了http类库,并且对http类库的引用存放在http变量中了。
这个时候,node.js会在我们应用中搜索是否存在node_modules的目录,并且搜索这个目录中是否存在http的模块。
如果node.js找不到这个目录,则会到全局模块缓存中去寻找,用户可以通过相对或者绝对路径,指定模块的位置。
比如:var myModule = require('./myModule.js');
模块中包含了很多功能代码片断,在模块中的代码大部分都是私有的。
意思是在模块中定义的函数方法和变量,都只能在同一个模块中被调用。
当然,可以将某些方法和变量暴露到模块外,这个时候可以使用exports对象去实现。