初始Nodejs_node.js(2)
模块:一个实现某些特定功能的文件,以实现模块化编程。通过require(模块名)引入模块.
—模块中的功能(如:变量,函数)通过赋给exports
对象的某个属性提供给调用者使用。
如何使用模块?
在Node中使用模块是非常方便的,在 JavaScript
代码中可以直接使用全局函数 require()
来加载一个模块。例如,我们可以使用require("http")
来加载node
中自带的http服务器模块,
包
包:包是一个文件夹,它将模块封装起来,用于发布、更新、依赖管理和版本控制。通过package.json来描述包的信息:入口文件,依赖的外部包等等。通过npm install
命令来安装包,并通过require
使用包。
异步式 I/O 与事件驱动
Node.js
的异步机制是基于事件的,每一个 I/O
就是一次请求,所有的磁盘 I/O
、网络通信、数据库查询都以非阻塞的方式请求,返回的结果由事件循环来处理。如下图所示:
Node.js
进程在同一时刻只会处理一个事件,完成后立即进入事件循环检查并处理后面的事件。这样做的好处是,CPU 和内存在同一时间集中处理一件事,同时尽可能让耗时的 I/O 操作并行执行
开始node编程
在这里,我推荐大家使用webstorm
进行node.js
的开发,方便又快捷,比起cmd,或者Mac下的终端都好用太多了。
至于node的安装大家就自行百度吧,这里就不赘述了,看下webstorm
下的node编程界面吧:
我们只需要在编写好的node代码界面按鼠标右键,然后点击Run就行啦,方便又快捷吧
下面是node的输出界面:
在Mac
系统下进行web开发,我推荐大家使用的三款工具是:coda2,webstorm和Sublime text3这些是目前我已经的最好的开发工具了,大家不妨试试哪个更符合自己的口味。
在webstorm
进行node开发需要先配置一定的文件,大家就自行百度吧,因为我的webstorm
已经配置好了,所以没法截图给大家看步骤了,大概步骤是,在mac系统下是先点击顶部栏的webstorm
,然后点击perference
,然后点击Node.js and NPM
,然后在右侧点击configure配置,最后大概会是下面这个样子:
windows
系统下和这个流程步骤大概相似啊,我使用的版本是8.0.4的。
全局变量
在js编程中,我们最好给每个变量都添加上var关键字,以免污染全局命名空间,提高代码的耦合风险。
console
console
用于向标准输出流standout
(stdout)和标准错误流(stderr)输出字符。
console.log()
向标准输出流打印字符并以换行符结束,其接受多个参数,将以类似C语言的printf()
格式输出
console.log(__dirname)输出文件目录
计算代码运行时间
console.time(label)
console.timeEnd(label)
我们只需在开始和结束那里给同样一个标签即可,中间放你想要计算执行时间的任何代码。
__filename
和__dirname
console.log(__filename);// /Users/hwax/Desktop/My Project/avalon/hello.js
console.log(__dirname);// /Users/hwax/Desktop/My Project/avalon
- 上一篇:js 操作符汇总
- 下一篇:jquery的总体架构分析及实现示例详解