ode.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine.
Node.js是基于Chrome的V8 JavaScript引擎构建的JavaScript运行时。node
简单的说 Node.js 就是运行在服务端的 JavaScript。
Node.js只能运行ECMAScript。
Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。python
做为异步事件驱动的JavaScript运行时,Node旨在构建可伸缩的网络应用程序。在下面的“hello world”示例中,能够同时处理许多链接。在每次链接时都会触发回调,可是若是没有工做要作,Node将会休眠。git
安装Node以后,让咱们尝试构建咱们的第一个Web服务器。建立名为“app.js”的文件,并粘贴如下代码:github
const http = require('http'); const hostname = '127.0.0.1'; const port = 3000; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World\n'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });
以后,运行您的Web服务器服务器
node app.js
访问http://127.0.0.1:3000/,您将看到一条消息“Hello World”markdown
这与当今使用OS线程的更常见的并发模型造成对比。基于线程的网络效率相对较低且很是难以使用。此外,Node的用户没必要担忧死锁,由于没有锁。Node中几乎没有任何函数直接执行I / O,所以进程永远不会阻塞。因为没有任何阻塞,可扩展系统在Node中开发很是合理。网络