发展史

曾经的 JavaScript:只能在浏览器里“打工”

在 2009 年之前,JavaScript 确实只能作为前端语言运行。这是因为 JavaScript 代码需要一个“翻译官”(JavaScript 引擎)才能被计算机理解,而当时这些“翻译官”只存在于网页浏览器(如 IE、Firefox、Chrome)内部。因此,JS 的能力被严格限制在网页交互上,它碰不到电脑的本地文件,也做不了服务器的网络底层操作。

Node.js 的诞生:2009 年的“越狱”

2009 年,一位名叫 Ryan Dahl 的程序员做了一件极其聪明的事:

  • 他把 Google Chrome 浏览器里最核心、最快的 JavaScript 引擎(叫做 V8 引擎)单独“抠”了出来。
  • 他用 C/C++ 为这个 V8 引擎加上了许多底层 API 接口,比如读写操作系统文件、处理网络 TCP/HTTP 请求、管理系统进程等。
  • 他把这个组合体包装起来,命名为 Node.js

为什么大家都叫它“后端语言”?

因为 Node.js 的出现,打破了 JavaScript 只能在浏览器里运行的宿命。 现在,开发者只需要把写好的 .js 文件丢给安装了 Node.js 的电脑,它就能在服务器操作系统(如 Linux、Windows)上直接运行,去连接数据库、提供接口服务,完成所有原本只有 Java、PHP、Python 等传统后端语言才能做的事情。

优势

  • 运行在V8引擎上,速度快
  • 事件驱动
  • 非阻塞的IO模型
  • 丰富的生态圈

全局对象

Nodejs提供很多全局对象,这些对象可以直接使用,不需要做单独的引入

在js中打印日志信息

1
console.log("测试");

定时器

1
2
3
4
5
6
7
8
9
var time=0

var timer = setInterval(funtion()){
time += 2;
console.log(time+"seconds have passwd");
if (time > 5){
clearInterval(timer);
}
},2000);

还有一些常用的全局对象:

1
2
console.log(__dirname)  //获取当前路径
console.log(__filename) //获取当前路径及文件名

回调函数