call()和apply()
1.共同点:作用完全一样。
都用来代替另一个对象调用一个方法,将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。
即在调用方法是,修改当前方法的调用对象
2.不同点:传入参数的形式:
xxx.call(obj,arg1,arg2,arg3)
xxx.apply(obg,[arg1,arg2,arg3])
eg:if(Object.prototype.toString.call(obj)=="[object Array]")
执行一瞬间相当于:arr.toSring();
用于判断一个对象是否第数组
本文详细解析了JavaScript中call()和apply()方法的作用及使用区别。这两种方法均可用于更改函数调用时的上下文对象,但参数传递方式有所不同。通过实例展示了如何利用这些方法来判断一个对象是否为数组。
1483

被折叠的 条评论
为什么被折叠?



