优势:
1.性能高
2.利于前端代码整合
3.便于前端开发入门
环境搭建和运行
傻瓜式安装 一路下一步
检测是否安装成功
node -v
直接输入node 会有一个等待的光标。这里可以直接脱离浏览器去运行
如何运行程序呢?
比如我们新建一个a.js
首先打开命令行:进入指定的文件夹 输入 node a.js 就能看到如下效果
NPM包管理
在没有npm以前
在有了npm以后 有一个package.json,如何来初始化创建呢,我们打开命令行输入
npm init
没有想要设置的就一路按回车 出现如上的图 继续回车 这时候再返回刚才的文件夹就发现多了一个package.json的文件
这里就是我们刚刚init时设置的内容。
发现上面多了个scripts,这个就是脚本, 我们输入这个test的时候就是相当于输入后面的一长串东西。用过vue的 npm run dev就类似一个道理
我们如何去安装一个第三方包呢?
npm install 包名
我们就发现多了我们的文件夹中多了个node_modules,打开就发现里面有jquery文件夹,然后在打开package.json
然后你要是删除包 就可以直接在这里删除,把你的项目交给你新来的同事的时候,他们不知道你用的什么东西的情况下 只要看package.json就能知道都用到了什么技术。
如何删除一个包?
npm uninstall 包名
以上命令都是可以简写的
npm i xxx /** 安装 */
npm un xxx /** 删除 */
npm 国外的、cnpm 是国内的
npm install -g cnpm --registry=https://registry.npm.taobao.org
-g就是全局的意思 如果不要-g就是相当于当前文件夹 去打开其他文件夹的时候cnpm 是不可用的
有需要的可以去安装cnpm,我电脑npm的速度还是可以的。
npm update xxx //更新
npm install // 安装package.json的依赖全部安装一遍了 简写 npm i
Node的模块
1.全局模块 (对象)process
2.系统模块 (内置的模块,我们只要引入进来,不需要去下载)
3.自定义模块 (自己写好的模块,把他暴露出去的)
全局模块
定义:何时何地都能访问,不需要引用
process.env (环境变量)
环境变量是什么?
打开电脑,右击有个属性,里面有高级系统设置,比如你新增了环境变量haha,值是xixi,然后进行代码打印,将会看到我们的系统环境变量都会打印出来
process.argv (打印命令)
系统模块
定义:需要require(),但不需要单独下载
path: 用于处理文件路径和目录路径的实用工具
自定义模块
定义:require自己封装的模块
exports 抛出
module 批量导出
require 导入 1.如果有路径就去路径里找 2.如果没有就去node_modules里面找 3.如果都没有就去node安装包的默认路径下找
重点 http模块
服务器对象 http.createServer()