arguments arguments的认识 将arguments伪数组转为真数组

2024-01-08 12:57:42

概述?

arguments为伪数组,伪书组就是不能使用数组的方法

arguments这个值等于函数括号内的参数,以伪数组的方式体现

function ff(a,b,c){
    console.log('参数是',arguments);
}
ff(1,2,3)//结果:'参数是',[1,2,3]

将arguments伪数组转为真数组

function ff(a,b,c){
    console.log('参数是',arguments);
    var arr=Array.prototype.slice.call(arguments)
}
ff(1,2,3)

分析代码:

var arr=Array.prototype.slice.call(arguments)

这一行代码即可将arguments伪书组转为真数组即:可使用数组的相关方法

1.首先数组的slice方法,会将原有数组转成一个新数组

2. .call(arguments)是将这个伪数组的值 arguments 赋值给slice后的新数组

3.call本来就是修改this指向的,然后再将slice后的新数组this指向转化为arguments这个this

4.arr就是转化后的真数组

文章来源:https://blog.csdn.net/qq_41429765/article/details/135395972
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。