我对JavaScript中的Array.from()感到困惑。我知道/认为这会将类似数组的值转换为数组,但为什么,如果Array是一个对象,我们不必使用' new'在我们可以使用它之前实例化它的关键字?
答案 0 :(得分:1)
JavaScript有几种集合类型(HTMLCollection,NodeList,FileList,' arguments'等)。后者是包含传递给函数的所有参数的变量。
成像你有一个需要使用普通数组传递数据的函数 - 在这种情况下,Array.from(..)对于转换任何其他集合类型非常有用。
答案 1 :(得分:0)
Array
是一个函数,函数是对象,对象具有属性。 from
只是该对象的属性。 Array
是一个函数而可以与new
一起调用的事实无关紧要。
示例:
function foo() {}
foo.bar = function() {
console.log('hi');
}
foo.bar(); // hi
推测将from
作为属性添加到Array
的主要原因是命名它(而不是创建另一个全局函数)。