Node.js
Node.js概述
- Node.js能解决什么问题?
Node.js是一种可以提供简单的,用于创建高性能服务器以及在该服务器运行各种应用程序的开发工具。Node.js不会为每一个请求服务端的客户端都创建一个线程,而是为每一个用户连接一个在Node.js中进行处理的事件。
- 使用Node.js实现高性能服务器
在Node.js中运行的是高性能的V8 JavaScript语言,这是一种被谷歌V8引擎解析并执行的脚本语言。谷歌V8引擎是由谷歌公司使用C++语言开发的一种高性能JavaScript引擎。这种引擎可以运行在服务器上,并且有丰富的API。
- 非阻塞型I/O和事件循环机制
为了实现高性能,Node.js采用了两种机制:非阻塞型I/O和事件循环机制。JavaScript语言只支持单线程,谷歌V8引擎也只支持单线程,因此不会产生死锁的情况。与客户端的JavaScript不同的是,在Node.js中为JavaScript语言提供了非阻塞型I/O机制。
事件循环机制:在Node.js中在一个时刻只能只能执行一个事件的回调函数,但是在执行一个事件的回调函数的过程中可以转而处理其他的事件,然后继续执行原事件的回调函数,这样的处理方式就称为事件循环机制。
Node.js中的模块
- Node.js中的模块
Node.js中的模块
在Node.js中都使用require()来加载模块,参数是模块的名称或者模块所在文件的路径,可以是绝对路径也可以是相对路径。
- Node.js中的控制台
- console.log()方法是一个标准的输入输出方法。可以向控制台打印信息。
- console.err()方法用于标准错误输出流的输出,向控制台中输出错误信息。
- console.dir()方法用于查看一个对象的内容并且将该对象的信息输出到控制台中。
- 当需要统计一段代码的运行时间可以使用console.time()和console.endTime()方法。
- console.trace()方法用于将当前位置栈的信息作为标准错误信息进行输出。
- console.assert()方法用于对一个表达式的执行结果进行评估。如果表达式的执行结果是false,就会输出一个异常。
- Node.js中的全局作用域
Node.js中有一个global对象,代表了Node.js中的全局命名空间,任何的全局变量、函数或者对象都是这个全局对象的属性。
- setTimeout()函数和clearTimeout()函数
setTimeout()函数的作用是设置在多少毫秒之后执行某一个函数。使用clearTimeout()函数可以取消该函数的调用。
- setInterval()函数和clearInterval()函数
setInterval()函数表示设置每隔多少毫秒执行某一个函数,clearInterval()表示取消该函数的调用。
刚看完《Node.js权威指南》这本书,这个算是笔记整理,需要的同学可以随便转发,收藏。未完,待更.....以下是往期内容: