Node.js是什么
1.Node.js的定义
Node.js是一个基于V8 JavaScript引擎的JavaScript运行时环境
也就是说Node.js基于V8引擎来执行JavaScript代码,但是不仅仅只有V8引擎,V8可以嵌入到任何C++程序当中,无论是Chrome还是Node.js,事实上都是嵌入V8引擎来执行JavaScript代码
但是在Chrome浏览器当中,还需要解析,渲染HTML,CSS等相关渲染引擎,另外还需要提供支持浏览器操作的API,浏览器自己的事件循环等
另外,在Node.js当中我们也需要进行一些额外的操作,比如文件系统的读/写、网络IO、压缩解压文件等操作。
2.输入内容
清空终端cmd cls
命令: node .\1.js num=1 num=2 输入内容空格分割
// 1.给程序输入内容
const arg1 = process.argv[2];
const arg2 = process.argv[3];
console.log(process)
console.log(arg1, arg2);
3.全局对象
global , module ,exports , require
4.特殊的全局对象
这些全局对象是模块中的变量,只是每个模块都有,看起来像是全局变量
在命令行交互中是不可以使用的
包括:__dirname,__filename,exports,module,require()
console.log(__dirname) //获取当前文件的路径不包含文件名
console.log(__filename)//获取当前文件的路径包含文件名
//setImmediate:立刻执行
setImmediate(() => {
console.log("setImmediate")
})
//额外执行函数
process.nextTick(() => {
console.log('nextTick')
})
5.统一全局对象globalthis
在node指向global
在浏览器指向window
Webpack
webpack的依赖图
webpack到底如何进行项目打包的?
1.处理应用程序时,会根据命令或者配置文件找到入口文件
2.从入口开始,会生成一个依赖关系图,这个依赖关系图会包含程序当中所有使用到的模块(比如js,css,图片,文字体等)
3.然后便利图结构,打包一个个模块(根据文件的不同使用不同的loader来解析)