Node是什么
- Node.js是一個(gè)基于V8引擎運(yùn)行環(huán)境
- V8引擎:JS的渲染器
- Node.js是一個(gè)服務(wù)器平臺
- Node.js底層使用C++編寫的
- Node.js是安裝在操作系統(tǒng)上的一個(gè)程序寞肖,這個(gè)程序的工作的時(shí)候是跟操作系統(tǒng)在對話纲酗。(交互)
Node執(zhí)行JS的方式
在Node.js中,運(yùn)行JS代碼的方式有兩種:
- 直接運(yùn)行js文件:node app.js
- 使用REPL模式運(yùn)行JS代碼
- R:Read讀取js代碼
- E:Execute執(zhí)行JS代碼
- P:Pron打印js代碼
- L:Loop循環(huán)js代碼
NodeJS VS 瀏覽器
-- | Node.js | 瀏覽器 |
---|---|---|
語法 | 支持ECMAScript | 支持ECMAScript |
API不同 | Global新蟆、module觅赊、buffer、domain等 | BOM琼稻、DOM |
老大不同 | Global | window |
交互對象 | 在node.js運(yùn)行js吮螺,是和操作系統(tǒng)對話 | 在瀏覽器中運(yùn)行js,是和瀏覽器對話 |
module API是什么
Node.js中的module是什么帕翻?
定義:
-
module
是一個(gè)內(nèi)置的全局對象 -
module
用于表示模塊 - 模塊:模塊就是封裝在一個(gè)js文件中的代碼塊鸠补。(在Node的模塊系統(tǒng)中,每一個(gè)js文件都是一個(gè)模塊)
const sum = (a,b) => { //這個(gè)就是一個(gè)模塊
return a + b
}
NodeJS中的module系統(tǒng)分為幾種嘀掸?
模塊系統(tǒng)的背景
- JS缺點(diǎn)1:沒有模塊
- JS缺點(diǎn)2:存在命名沖突
<script src='./jquery.js'></script>
<script src='./tquery.js'></script>
<script src='./script.js'></script>
- CommonJS:面向服務(wù)器 通過Require()
- RequireJS:基于CommonJS的一個(gè)包裝
- AMD:Asynchrouns Module D?:面向?yàn)g覽器
Node.js的模塊系統(tǒng)分為兩種:
- CommonJS:讀:卡門 Node.js的默認(rèn)模塊系統(tǒng)紫岩。采用第三方系統(tǒng)
- ECMAScript:是Node.js的標(biāo)準(zhǔn)模塊系統(tǒng)。(向原生語言看起)ES6
NodeJS中的module分為幾種睬塌?
- 本地模塊:在項(xiàng)目中被因,由開發(fā)者創(chuàng)建的模塊
-
內(nèi)置模塊:由Node.js提供的預(yù)設(shè)模塊
- 內(nèi)置模塊是全局模塊
- 內(nèi)置模塊是Node.js的核心模塊
- 第三方模塊:在項(xiàng)目中,由其它開發(fā)者創(chuàng)建的模塊
NPM是什么衫仑?
- NPM:Node Package Manager Node軟件包管理器
- NPM就是Node.js平臺的商店
CommonJS模塊系統(tǒng)
module對象
定義:
- module對象表示一個(gè)模塊
- 一個(gè)JS文件就是一個(gè)模塊
- 模塊是封裝在js文件中代碼,擁有獨(dú)立的作用域堕花。
- module對象是一個(gè)全局對象文狱。
module.prototype.require() 方法
定義:
-
require()
方法用于加載外部模塊 -
require()
是node的一個(gè)內(nèi)置函數(shù) -
require()
在工作的時(shí)候,它用于包裹(讀取+執(zhí)行)模塊文件中的代碼塊缘挽。
語法:
module.require(id)
require(id) //module是全局對象瞄崇,可省略
- id:表示加載的模塊的文件名
返回值:
- 返回從模塊文件中導(dǎo)出的模塊
示例:
module.exports 對象
定義:
-
module.exports
用于暴露/導(dǎo)出/分享模塊呻粹。(暴露作用域) -
module.exports
是一個(gè)對象 -
Module.exports
用于包裹要導(dǎo)出的模塊
語法:
//語法1:導(dǎo)出單個(gè)變量(變量名、函數(shù)名苏研、類名)
const sum = (a,b) => {
return a + b
}
module.exports = sum //單個(gè)變量名
//語法2:導(dǎo)出單個(gè)直接量
module.exports = (a,b) => {
return a + b
}
//語法3:導(dǎo)出多個(gè)變量
const sum = (a,b) => {
return a + b
}
const minus = (a,b) => {
return a - b
}
module.exports = {
// sum:sum,
// minus: minus
sum,
minus
}
//語法4:導(dǎo)出多個(gè)變量
module.exports.sum = (a,b) => {
return a + b
}
module.exports.minus = (a,b) => {
return a - b
}
//語法5:導(dǎo)出多個(gè)變量
module.exports = {
sum : (a,b) => {
return a + b
},
minus : (a,b) => {
return a - b
}
}
//語法6:導(dǎo)出多個(gè)變量
const obj = {
sum : (a,b) => {
return a + b
},
minus : (a,b) => {
return a - b
}
}
module.exports = obj
1. 5個(gè)命令等浊。
- 1.cd:命令用于改變目錄
- 2.pwd:用于顯示當(dāng)前位置。
- 3.ls:用于查看當(dāng)前目錄下的內(nèi)容(文件和文件夾)
- 4.mkdir:用于創(chuàng)建文件夾
- 5.rm:用于刪除指定的目錄或文件
2. 命令行使用技巧
-
- 打開命令行:
- 全局打開:搜索框 => 輸入power
- 定位文件夾打開:按住shift + 右鍵點(diǎn)空白
- 快速補(bǔ)全:輸入一個(gè)字母+tab鍵可以補(bǔ)充全名
- 快速查詢上一條錄入:使用
上方向鍵
- 快速查詢上一條錄入:使用
3. Node.js中的module是什么摹蘑?
-
module
是一個(gè)內(nèi)置的全局對象筹燕。 -
module
用于表示模塊。 - 模塊:模塊就是封裝在一個(gè)js文件中的代碼塊衅鹿。(在Node的模塊系統(tǒng)中撒踪,每一個(gè)js文件都是一個(gè)模塊)
4. NodeJS中的module系統(tǒng)分為幾種?
- CommonJS: Node.js的默認(rèn)模塊系統(tǒng)大渤。采用第三方的模塊系統(tǒng)制妄。讀音:卡門
- ECMAScript: 是Node.js的標(biāo)準(zhǔn)模塊系統(tǒng)。(向原生語言看齊) 可以讀:ES6
5. NodeJS中的module分為幾種泵三?
- 本地模塊:在項(xiàng)目中耕捞,由開發(fā)者創(chuàng)建的模塊。
- 內(nèi)置模塊:由Node.js提供的預(yù)設(shè)模塊烫幕。
- 內(nèi)置模塊是全局模塊俺抽。
- 內(nèi)置模塊是Node.js的核心模塊。
- 第三方模塊: 在項(xiàng)目中纬霞,由其他開發(fā)者創(chuàng)建的模塊凌埂。