我不能理解if语句,它在说什么,为什么没有else语句
function max(input) {
if (toString.call(input) !== "[object Array]")
return false;
return Math.max.apply(null, input);
}
console.log(max([12,34,56,1]));
console.log(max([-12,-34,0,-56,-1]))
;
检查input
参数是否为Array
Array的默认toString()实现返回字符串[object Array]
,因此我们检查它以确保值是Array类型。您可以直接在input
上调用toString()
,但随后您需要确保input
具有null
或undefined
以外的值,因此我们调用window
对象的toString()方法,但将上下文作为input
值
if语句中的条件检查输入是否是数组。
如果在if语句的true分支中有返回语句,则不需要在函数中使用else语句。
在这种情况下,if语句之后的任何内容只会在条件为false时运行。