如下代码输出的结果是什么: console.log(1+ "2"+"2");console.log(1+ +"2"+"2");console.log("A"- "B"+"2");
2定义一个log方法,让它可以代理console.log的方法。 可行的方法一: function log(msg) { console.log(msg
解析: 对于apply和call两者在作用上是相同的,即是调用一个对象的一个方法,以另一个对象替换当前对象。将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 但两者在参数上有区别的。对于第一个参数意义都一样,但对第二个参数: apply传入的是一个参数数组,也就是将多个参数组合成为一个数组传入, 而call则作为call的参数传入(从第二个参数开始)。 如func.call(func1,var1,var2,var3)对应的apply写法为:func.apply(func1, [var1,var2,var3]) 。