function sum () {
//arguments:内置的实参集合,(箭头函数中没有)不是数组,是类数组,(不是数组的实例,无法直接使用数组的方法;
let total = 0;
for (let i = 0; i < arguments.length; i++) {
total += arguments[i]
}
return total
}
let total = sum(10, 20, 30, 40);
let sum = (...arg) => eval(arg.join('+'));
// arg:存储传递信息的实参(数组)
// eval 把字符串转化为js表达式执行
let total = sum(10, 20, 30, 40)
console.log(total);
两者相比较说明如果arguments是数组就好了
function sum () {
// let ary = Array.prototype.slice.call(arguments);
let ary = [].slice.call(arguments)
// 数组求和
return eval(ary.join('+'))
}
let total = sum(10, 20, 30, 40)
console.log(total);
不仅仅是这个一个方法可以调用,很多数组的方法,类数组都可以使用~~
function sum () {
let total = null;
[].forEach.call(arguments, item => {
total += item;
})
return total
}
let total = sum(10, 20, 30, 40)
console.log(total);