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

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个字节)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    w_zhuan阅读 3,642评论 2 41
  • Node.js是目前非常火热的技术,但是它的诞生经历却很奇特。 众所周知,在Netscape设计出JavaScri...
    Myselfyan阅读 4,103评论 2 58
  • 1 Node.js模块的实现 之前在网上查阅了许多介绍Node.js的文章,可惜对于Node.js的模块机制大都着...
    zlx_2017阅读 1,293评论 0 1
  • 1 写作结构本文的写作顺序很好,开头便抛出了巨大的悬念-莉迪亚的死。后面娓娓道来地描述了整个事件的缘由结果,每个章...
    小蛮艾阅读 537评论 0 1
  • 嗯,新的一年,2016,我琢磨着又到了辞旧迎新的时刻,然而想了想过去的2015年里后半年的概况差不多就如同现在一样...
    喵格拉阅读 475评论 1 1