JavaScript里的数组转化新方法Array.From

过去,我们使用各种各样的方法来将类似Array对象的东西(比如 argumentsNodeList) 转换成真的数值。比如下面这个:

基本上,这些东西我们都可以使用Array.prototype.slice.call()这样的方法将argumentsNodeList等转行成想要的形式。

如今,我们有了更直接的方法,直接将这些类数组的对象转化成真正的对象。

NodeList 转化成 Array

var divs = Array.from(document.querySelectorAll('div'));

// Array[232] (every DIV on the page)

arguments 转化成 Array

function something() {
  var args = Array.from(arguments);

  // Array['yes', 1, {}]
}
something('yes', 1, {});

String 转化成 Array

Array.from('JavaScript'); // 很像'JavaScript'.split('')

// ["J", "a", "v", "a", "S", "c", "r", "i", "p", "t"]

这些写法非常的简单清晰,不需再使用slice等间接方法!

阅读余下内容
 

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注


京ICP备12002735号