使用Array.from(document.querySelectorAll('div'))
还是[...document.querySelectorAll('div')]
有什么区别?Array.from()vs spread syntax
这里是一个例子:
let spreadDivArray = [...document.querySelectorAll('div')];
console.log(spreadDivArray);
let divArrayFrom = Array.from(document.querySelectorAll('div'));
console.log(divArrayFrom);
console.log()
的将记录相同的结果。
是否有任何性能差异?
扩展运算符的好处是它支持'Object'。 performance .. idk –
要了解是否有任何性能差异,请运行基准测试。根据您是在本地ES6环境还是转换到ES5,结果可能会有很大不同。 – 2016-11-11 12:46:08
主要区别在于'Array.from'可以处理没有实现迭代器协议(即Symbol.iterator)的类似数组的对象。即使使用ES6和新的浏览器规格,这些规格也越来越少。 – nils