关于node.js的一些使用小技巧

2018-01-14  本文已影响0人  Shaw_Chen

1、每次修改后端代码都要ctrl+c重启服务

2、在ECMAscript部分node和js其实是一样的,比如数据类型的定义,语法结构,内置对象

在js中的顶层对象:window

在node 中的顶层对象:global

注意:在node中也没有window

3、模块:

一个文件就是一个模块,每个模块都有自己的作用域

我们使用var来声明的一个变量,他并不是全局的,而是属于当前模块下的

4、模块加载机制:

路径:相对路径/绝对路径

处理流程:

(1)首先按照加载的模块的文件名称进行查找

(2)如果没有找到,则会在模块文件名称后加上.js后缀,进行查找

(3)如果没有找到,则会在模块文件名称后加上.json后缀,进行查找

(4)如果没有找到,则会在模块文件名称后加上.node后缀,进行查找

顺序:文件名称->.js->.json->.node

5、在一个模块中通过var定义的变量,其作用域范围是当前模块,外部不能直接访问

如果想一个模块能够访问另外一个模块定义的变量,可以:

(1)把变量作为global对象的一个属性,但是这样的做法不推荐

(2)使用模块对象module 即module.exports

在模块作用中,还有一个内置对象,exports,其实就是module.exports

6、__filename返回当前模块文件解析后的绝对路径,该属性并非全局,而是模块作用域下的

__dirname返回当前文件所在目录解析后的绝对路径,该属性不是全局,而是模块作用域下的

7、process对象是一个全局对象,可以在任何地方都能访问到他。

8、Buffer类用于操作二进制数据流

(1)当我们为一个Buffer对象分配空间大小后,其长度是固定的,不能更改

(2)如果我们想获得字符的个数可以直接使用lengh,如果想获得字节,可以先把字符串转化为buffer对象(一个中文字符占3个字节)

上一篇下一篇

猜你喜欢

热点阅读