【JavaScript实战技巧系列】之函数arguments你知道多少?

138 阅读1分钟

大家好,我是程序员_随心,希望能够通过自己的学习输出给你带来帮助。

题目

function sum(num1, num2) {
  console.log(arguments.length);
}
​
console.log(sum(10));
​
​
function sum1(num1, num2) {
  arguments[1] = 10;
  console.log(arguments.length);
}
console.log(sum(10));

请大家思考,不要看下方答案哦~

结果

结果实际为:

1
1

知识点总结

同学们答对了吗? 其实这道题就是考大家的基础知识的。

如果函数之传入了一个参数,设置arguments[1]为某个值,那么这个值不会反映到第二个参数。这是因为arguments对象的长度是根据传入的参数个数,而非定义函数时给出的命名参数个数确定的

最后

您的每一个点赞及评论都是对我坚持写作最大的支持! 另外希望各位朋友和我交流讨论,如有不对的地方,更希望批评指正!

我是程序员_随心,希望能够通过自己的学习输出给你带来帮助。