从 NodeList 转换为 Array:揭示最快的方法
之前的讨论建议使用 Array.prototype.slice.call(nl)方法提供了从 NodeList 到 Array 的最有效的转换。然而,最近的基准测试揭示了一个惊人的不同现实。与流行的看法相反,传统的 for 循环方法 for(var i = 0, n; n = nl[i]; i) arr.push(n); 比上述方法高出三倍。
这一令人费解的发现激发了人们的好奇心:这仅仅是 Chromium 6 的一个怪癖,还是隐藏着一种更快的方法?幸运的是,随着 ES6 的出现,我们得到了一个解决方案,它毫不费力地优于之前提出的两种方法。
Array.from():终极解决方案
The ES6 中引入的 Array.from() 函数提供了一种将 NodeList 转换为 Array 的简洁而快速的方法。它的语法很简单:
// nl is a NodeList let myArray = Array.from(nl)
这一行代码以无与伦比的效率完成了转换,大大超越了它的前辈。因此,对最快转换方法的追求在 Array.from() 的胜利中达到了顶峰,为开发人员提供了完成这项基本任务的无与伦比的解决方案。
以上是NodeList 到 Array:'Array.from()”真的是最快的吗?的详细内容。更多信息请关注PHP中文网其他相关文章!