Array.prototype.slice.call()
程序员文章站
2022-08-08 17:34:21
MDN中对于Array.prototype.slice.()的介绍中,提到了类数组对象。以下是原文: slice 方法可以用来将一个类数组(Array-like)对象/集合转换成一个新数组。你只需将该方法绑定到这个对象上。 一个函数中的 arguments 就是一个类数组对象的例子。 除了使用 Ar ......
mdn中对于array.prototype.slice.()
的介绍中,提到了类数组对象。以下是原文:
slice
方法可以用来将一个类数组(array-like)对象/集合转换成一个新数组。你只需将该方法绑定到这个对象上。 一个函数中的 arguments
就是一个类数组对象的例子。
function list() { return array.prototype.slice.call(arguments); } var list1 = list(1, 2, 3); // [1, 2, 3]
除了使用 array.prototype.slice.call(arguments)
,你也可以简单的使用 [].slice.call(arguments)
来代替。
所以arguments并不是真正的数组对象,只是与数组类似而已,所以它并没有slice这个方法,而array.prototype.slice.call(arguments, 1)可以理解成是让arguments转换成一个数组对象,让arguments具有slice()方法。
同理可知,我们可以给array.prototype.slice.call(arguments)
加上第二个参数。
function list() { return array.prototype.slice.call(arguments, 1); } var list2 = list(4, 5, 6); list2; //[5, 6]
转载自:https://www.cnblogs.com/xingteng/p/9878523.html
上一篇: 怎样炒河粉好吃又简单,小编手把手来教你
下一篇: Mysql学习之事务的隔离性