第一种:varlog=function(){returnconsole.log(arguments);};log('a','n');输出:["a","n"]第二种:varlog=function(){returnconsole.log.apply(console,arguments);};log('a','n');输出:an请问这里是什么原理造成的?
2 回答
翻翻过去那场雪
TA贡献2065条经验 获得超14个赞
第一种情况其实你打印的是arguments这一个变量,所以会输出一个数组。第二种情况arguments是作为包含所有参数的变量传递给console.log,所以打印的是两个字符。这就好比有人开车送给你两个西瓜,第一种情况你直接把车收下了,第二种情况你只收下了车里的西瓜。
添加回答
举报
0/150
提交
取消