自用教程
Node.js 教程
简单的说 Node.js 就是运行在服务端的 JavaScript。
Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台。
Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境,
基于 Google 的 V8 引擎,
V8 引擎执行 Javascript 的速度非常快,
性能非常好。
诞生
先来聊聊 Node.js 诞生的故事,
了解一下它最早的定位,
以及后来定位的变化。
Node.js
是2009的时候由大神 Ryan Dahl 开发的。
Ryan 的本职工作是用 C++ 写服务器,
后来他总结出一个经验,
一个高性能服务器应该是满足“事件驱动,
非阻塞 I/O
”模型的。
C++ 开发起来比较麻烦,
于是 Ryan 就想找一种更高级的语言,
以便快速开发。
可以说有两点促成了Nodejs
的诞生。
首先第一点,
Ryan 发现 JS 语言本身的特点就是事件驱动并且是非阻塞 I/O 的,
跟他的思路正是绝配。
第二点,Chrome
的 JS 引擎,
也就是 V8
引擎是开源的,而且性能特别棒。
于是 Ryan 就基于 V8 开发了 Node.js ,
注意 Node.js 听名字好像是个 JS 库,
其实不是的,Node.js 是 C++ 开发的,
到官网 http://nodejs.org
可以看到
Node.js 是一个基于 Chrome V8 引擎的 Javascript 运行环境
所以说 Node.js 不是库,
是一个运行环境,或者说是一个 JS 语言解释器。
Node.js 最初的定位是提升 Ryan 自己的日常工作效率,
也就是用来写服务器代码的,
但是后来没有想到的是 Node.js 在前端领域却大放异彩。
先说几句 Node.js 在服务器端的发展。
Node.js 的诞生带给人们的是个大大的惊喜,
传统上 Web 开发者,
前端用 JS 写,
但是写服务器端代码的时候还必须用另外一种语言,
类似 Ruby/Java/PHP 等。
但是 Node.js 出现之后,
JS 前后通吃了。
如果去网上搜 Node.js 的资料,
很多都是用 Node.js 去写服务器代码的。
但是,
Node.js 今天也成为了 Web 前端开发必不可少的基础设施。
注意,
Web 前端的 JS 代码最终还是运行在浏览器中的,
所以运行的时候,
或者说在产品环境下,
不依赖于 Node.js 。
但是,Node.js 诞生以后,
前端大爆发,
类似 React/Vuejs 这样的前端框架的开发环境变得非常强大和负责,
Node.js 是这些开发环境运行的基础。
这就是关于 Node.js 诞生,
以及它如何从纯后端发展到前后通吃的故事。
以上来源:某乎——Peter 王广忠
使用的版本
我们可以使用以下命令来查看当前的 Node 版本:
$ node -v
v4.4.3
注意:不同版本间可能是有差异的。
第一个 Node.js 程序:Hello World!
脚本模式
以下是我们的第一个 Node.js 程序:
实例
console.log("Hello World");
保存该文件,
文件名为 helloworld.js,
并通过 node 命令来执行:
node helloworld.js
程序执行后,正常的话,就会在终端输出 Hello World。
交互模式
打开终端,键入node进入命令交互模式,
可以输入一条代码语句后立即执行并显示结果,
例如:
$ node
> console.log('Hello World!');
Hello World!