函数的重载
根据参数的个数/类型不同, 执行不同的代码逻辑
arguments
是一个保存函数收到的所有实参的对象,有数组length和下标的属性
// 面试题: 实现一个 max 函数, 能够求出任意数量参数的最大值
function max() {
// 当无法预测形参个数时, 则不写形参, 用arguments解决
console.log(arguments);
// 思路: 临时把第一个值 认为最大, 然后1个1个比较, 比较时, 如果后续数字更大, 则 把临时的
最大值换成这个更大的. 数组遍历完毕后, 自然这个临时最大值就是最大的
var max = arguments[0]
for (var i = 1; i < arguments.length; i++) {
if (max < arguments[i]) {
max = arguments[i]
}
}
console.log('最大值:', max);
}
max(10, 20)
max(10, 20, 30, 4356, 123, 43)
max(10, 20, 30, 43, 23, 13, 3, 54)
</script>