1 |
|
pack.js代码如下:
1 |
|
相关知识点解析:
1、amd cmd规范
2、__filename
当前模块的文件名。 这是当前模块文件的已解析的绝对路径。
3、new Function 构造器创建函数的使用方法和特点
注意: 使用Function构造器生成的函数,并不会在创建它们的上下文中创建闭包;它们一般在全局作用域中被创建。 当运行这些函数的时候,它们只能访问自己的本地变量和全局变量,不能访问Function构造器被调用生成的上下文的作用域。 这和使用带有函数表达式代码的 eval 不同。
4、fs node功能
是node中的文件系统(file system)
readFileSync方法:同步的读取文件内容,异步的是readFile。
5、map foreach 区别
1)foreach 返回值是undefined,不可以链式调用;
2)map 会返回一个新数组。原数组不变;
3)不能终止循环;
举例: [“1”, “2”, “3”].map(parseInt); //结果 [1, NaN, NaN] 相当于 parseInt(‘1’, 0) parseInt(‘2’, 1) parseInt(‘3’, 2) 如果想得到[1, 2,3]应该这么做:
1 |
|
这主要是因为 parseInt()默认有两个参数,第二个参数是进制数。当parseInt没有传入参数的时候,而map()中的回调函数时候, 会给它传三个参数,第二个参数就是索引,明显不正确,所以返回NaN了。
map的回调接受三个参数,第一个是当前的值,第二个是当前的索引,
而parseInt传的第二个参数小于等于第一个参数的时候会返回NaN, 所以是[1, NaN, NaN]
6、apply
1)改变作用域
2)扩充函数参数
7、npx node8.2版本的命令
npx webpack 执行node_module里面的.bin中的webpack
8、npm link 可能会存在权限不够的情况 用sudo npm link
9、ejs包
一款js模板引擎,(=转义 -不转义)