/********************************************************************************************************************* * 语法 * 定义 * 说明 * * call(thisObj,Object) * 调用一个对象的一个方法, * call 方法可以用来代替另一个对象调用一个方法。 * * * 以另一个对象替换当前对象。 * call 方法可将一个函数的对象上下文从初始的上下文象. * * * * 改变为由 thisObj 指定的新对像 * * * * 如果没有提供 thisObj 参数, * * * * 那么 Global 对象被用作 thisObj * *********************************************************************************************************************/ function foo() { console.log(typeof arguments); console.log(arguments); //用arguments对象去调用数组的slice方法,call() 第一个是调用方法的对象,后面的是参数 var args = Array.prototype.slice.call(arguments, 0); console.log(args); } /*object { '0': 12, '1': 'abc' } [ 12, 'abc' ]*/ foo(12,"abc");