语句var arr=[a,b,c,d];执行后,数组arr中每项都是一个整数,下面得到其中最大整数语句正确的是哪几项?
A
Math.max(arr)
B
Math.max(arr[0], arr[1], arr[2], arr[3])
C
Math.max.call(Math, arr[0], arr[1], arr[2], arr[3])
D
Math.max.apply(Math,arr)
正确答案:BCD
A选项错误 因为函数 Math.max(x);的参数是Number类型,可以是小数,整数,正数,负数或者是0.如果不是上面所述类型就会返回NaN
Math.max(args...)传入参数是任意数量的值
A 传入数组,所以错误
B 可以
C Function.call()可以传入任意多个参数,C正确
D Function.apply()第二个参数以数组形式传递,D正确
js函数调用,如果未指明函数所指的类,即直接调用functionA(),this关键字指向当前环境即window对象,相当于调用window.functionA()。
call、apply方法的第一个参数是this关键字,即指明functionA()是哪一个对象的方法。
apply以数组传递参数,call独立传递