Node.js学习
node.js很火,今天学习下node.js
描述
1.node.js v8引擎解析js
2.特点:事件驱动,无阻塞I/O模型
3.js引擎套一个壳子,传给硬件
4.js—>node.js–>libuv中间层—>硬件
5.优势:轻量,高效
分析
1.在加载一个自己编写的模块对的时候,最好使用__dirname和要加载的模块
2.node会按照’.js 、.node、.json’的次序补足扩展名,依次尝试
注意:
路径.js 后缀省略,但建议添加
路径.node 后缀为node的文件是c/c++写的一些扩展模块
路径.json 后缀最好加.json.提高效率
.json文件最终Node.js也是通过fs读文件的形式读取出来的。
3.包
a.包的作用:在模块的基础上进一步组织javaScript
b.包的组成:
–包结构
–包描述文件package.json
–描述你的当前的包的一些相关信息
+dependencies
–包名:”版本号”
4.安装
3m安装法 npm nvm nrm
npm基本命令
命令 | 描述 |
---|---|
npm i -S [email protected] | 生产环境安装jquery指定版本 |
npm i -D jquery | 开发环境安装jquery |
npm install -g 包名 | 表示全局安装,npm在安装的时候,在全局设置了一个安装 目录,只要是全局安装就会把包安装到这个目录中去只要全局安装就是安装命令行工具 |
npm intall | 当执行时,会自动在当前目录中查找package.json 文件,如果找到,找里面的dependencies字段,安装该字段中所有依赖项 |
npm docs | 通过命令打开包相对应的文档 |
npm config set prefix | 修改全局安装目录不建议使用,建议去文件夹里面找c:\users\用户名\ 里面有一个.npmrc文件,里面修改 prefix=,去全局环境变量path里加入路径 |
npm list | 查看安装列表 |
node依赖介绍
- 新建一个node_test3文件夹
- 使用npm命令在node_test3中,npm init创建package.json
手动创建index.js
同一目录创建node_modules目录
最终目录结果如下:
- package.json创建后的代码为:
{
"name": "test3",
"version": "0.0.1",
"description": "test",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
"test"
],
"author": "zxb",
"license": "MIT",
"dependencies": {
"add":"*"
},
"devDependencies": {
"add":"*"
}
}
index.js代码,主要作用是调用node_modules自建的add模块
/**
* Created by Administrator on 2018/3/26.
*/
var add=require('add');
console.log(add(1,3));
接下来在node_modules创建add文件夹,添加index.js和package.json
index.js
/**
* Created by Administrator on 2018/3/26.
*/
var add=function(v1,v2){
return v1+v2;
}
module.exports=add;
package.json
{
"name": "add",
"version": "0.0.1",
"description": "add",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
"test"
],
"author": "zxb",
"license": "MIT",
"dependencies": {
},
"devDependencies": {
}
}
4.我们开始在回来看index.js是如何调用node_modules下的add模块的,
var add=require('add');
console.log(add(1,3));
直接引入,add就可以,我们打印下看看。
D:\web_project\node_test3>node index.js
4
ok,今天就学习到这,明白了node的创建,命令行,及依赖,有不懂的同学可以留言解决哈