1.webpack中的loader和plugins的区别都有什么?
loader是一个解析器,或者说是一个转换器,主要用于转换指定类型的模块功能,比如将不同的语法转换成统一的语法,例如less转换成css。因为webpack自身只能识别js和json两种格式,对于其他的别的格式就需要loader来解析成commonJS格式才可以被webpack读取到。
plugins是一个扩展器。比如打包优化,文件管理,环境注入等都是放在plugins里的。针对loader结束后,webpack打包的整个过程中,它并不直接操作文件,而是基于事件机制工作。会监听webpack过程中的某些节点,执行广泛的任务。比如资源管理,bundle文件优化等操作。
2.Array数组的方法。
添加元素到数组的末尾:push
删除数组末尾的元素:pop
删除数组头部的元素:shift
添加元素到数组的头部:unshift
查找元素索引,indexOf
通过索引删除某个元素 splice
复制一个数组slice
fill()
方法用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引
从类数组对象或者可迭代对象中创建一个新的数组实例。
用来判断某个变量是否是一个数组对象。
根据一组参数来创建新的数组实例,支持任意的参数数量和类型。
Array.of(7); // [7]
3.对象
枚举一个对象的所有属性
从 ECMAScript 5 开始,有三种原生的方法用于列出或枚举对象的属性:
- for...in 循环
该方法依次访问一个对象及其原型链中所有可枚举的属性。 - Object.keys(o)
该方法返回一个对象o
自身包含(不包括原型中)的所有属性的名称的数组。 - Object.getOwnPropertyNames(o)
该方法返回一个数组,它包含了对象o
所有拥有的属性(无论是否可枚举)的名称。 -
通过复制一个或多个对象来创建一个新的对象。
-
返回一个包含所有给定对象自身可枚举属性名称的数组。
返回给定对象自身可枚举值的数组。
-
String 对象的 toUpperCase() 方法,把文本转换为大写:
-
正整数转化为二进制的方法是什么,就是将该数不断除以2求余,一直到最后一个数为1,然后倒着将余数从左往右拼接或者是toString(radix)方法可以将数字转为二进制字符串,radix表示要转为几进制。parseInt是将二进制转换成十进制。
parseInt("11",2)=>3