1、Node.js安装及使用
Node.js 诞生于2009年,Node.js采用C++语言编写而成,是 一个Javascript的运行环境。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境 ,让JavaScript的运行脱离浏览器端,可以使用JavaScript语言 书写服务器端代码。
2、Node.js安装及使用
Node.js官网(https://nodejs.org/en/)下载稳定版本,node偶数版本为稳定版本,奇数版本为非稳定版本。
- mac 直接安装 或者 brew来安装
- 安装完Node.js会自动安装NPM(Node Package Manager):包管理工具;
- 通过指令 node -v 来查看是否安装完成和查看node版本号;npm -v 来查看npm版本。
2、通过Node.js搭建服务器
使用Node.js实现第一个服务器
初步感受Node.js
//引入http模块
let http = require("http");
//创建一个服务器
let serve = http.createServer((req,res)=>{
console.log("hello");
res.end("hello world");
})
//设置端口号
serve.listen(3000);
3、模块化及自定义模块
一、为什么会有模块化
在JavaScript发展初期就是为了实现简单的页面交互逻辑,寥寥数语即,如今随着前端代码日益膨胀
这时候JavaScript作为嵌入式的脚本语言的定位动摇了,JavaScript却没有为组织代码提供任何明显帮助,JavaScript极其简单的代码组织规范不足以驾驭如此庞大规模的代码;
二、Node.js中的模块化 commonjs规范
CommonJS就是为JS的表现来制定规范,因为js没有模块的功能所以CommonJS应运而生,它希望js可以在任何地方运行,不只是浏览器中。
1、创建自定义模块
- 引入一个文件 形式模块
home.js执行文件
//通过require来引入
require("./aModule"); //注意一定要有"./",文件后缀可加可不加。
amodule.js文件
console.log("我是amodule模块111");
- 引入文件夹形式模块
require("./aModuledir"); //必须加"./"
aModuleDir里的index.js文件,会自动查找文件夹下的index.js文件执行
console.log("我是aModule模块文件夹");
当然也可以配置默认启动文件,在文件夹内新建package.json来指定执行文件
{
"name":"aModule",
"version":"1.0.0",
"main":"test.js"
}
2、自定义模块的按需导出
通过module.exports 导出; ___dirname , __filename
module.exports = {
a:"我是a的值",
b(){
console.log("我是导出的b函数");
}
}
引入导出文件
let mymodule = require("bModule");
console.log(mymodule.a);
mymodule.b();
或者 通过 exports来导出
exports.fn = function(){
console.log("我是fn函数");
}
导入文件
let myfn = require("bModule").fn;
myfn();
// 或者 通过解构赋值
let { fn } = require("bModule");
fn();
模块加载的优先级 ,先文件再目录;
关于modul.exports 和exports 的区别和require特性在另外一篇文章里详细的介绍
三、npm包管理器
NPM(Node Package Manager) 官网的地址是 npm官网
npm常用指令;
npm init:引导创建一个package.json文件
npm help(npm -h) :查看npm帮助信息
npm version (npm -v) : 查看npm版本;
npm search:查找
npm install (npm i):安装 默认在当前目录,如果没有node_modules 会创建文件夹;
npm install module_name -S 或者–save 即 npm install module_name --save 写入dependencies
npm install module_name -D 或者 —save-dev 即 npm install module_name --save-dev 写入devDependencies
npm install module_name -g 全局安装(命令行使用)
指定版本安装模块 npm i module_name @1.0 通过 "@"符号指定;
npm update(npm -up):更新
npm remove 或者 npm uninstall:删除
npm root 查看当前包安装的路径 或者通过 npm root -g 来查看全局安装路径;