这段代码中console.log(reverse(1,2,3);往reverse(arr)里面传的是什么?
1 回答
已采纳
李晓健
TA贡献1036条经验 获得超461个赞
reverse(1,2,3) 这样传过云参数 当然就是1 2 3 三个参数了, 你方法定义时只接收第一个参数, 所以就只能接收到1。 方法里的 arr === 1; 如果你想传多个数字不传数组 你可以这样写
//这里不接收参数 直接使用arguments 来获取参数 arguments是function里的内部变量,可以直接使用 function reverse() { var newArr = []; for(var i= arguments.length-1; i>=0 ; i--){ newArr[newArr.length] = arguments[i]; } return newArr; } console.log(reverse(1,2,3));
如果你想兼容多种传参 就需要通过 arguments 来判断传入的参数类型 来做不同的处理
添加回答
举报
0/150
提交
取消