当前位置: 代码迷 >> 综合 >> javascript 中 apply 方法的使用
  详细解决方案

javascript 中 apply 方法的使用

热度:81   发布时间:2023-12-06 22:04:42.0

在看 backbone 的 todos 例子时,有一行代码,如下:

 

this.without.apply(this, this.done());

 

一开始怎么也不理解这句话的含义。后来看了一些网上的解释,还是半懂不懂的。今天再次看到它的时候,把JAVA里的反射跟它联系了一下,感觉有点像,然后,再回过头去看看网上的那些解释,感觉有点懂了。

如果把上面一句写成下面这个样子的话,可能更好理解一些:

 

this.without(this.done())

 

其中,第一个this就相当于上面apply函数中的第一个参数。

 

有人可能会问,既然可以写成下面这个样子,那为什么还要写成上面那个?请看下面这行代码:

 

ClassA.without.apply(ClassB, ClassB.done());

 

这下看明白了吧,without 这个方法可能是定义在别的类中的,所以无法通过  ClassB.without()来引用。

  相关解决方案