js 里面的 call 方法 和 apply 方法

call and apply 其实没有什么区别, 作用都是相同的,但是就是 有关一点 ,传的第二个参数形式有区别

首先看一下他们的作用:

function Class(){
    this.name = 'Class';
    this.getName = function(){
        console.log(this.name);
    }
}

function ClassA(){
    this.name = 'ClassA';
}

var obj = new Class();
obj.getName.call(ClassA);  // ClassA 

看看就知道了, 这里面的输出是这个样子, 

在看看他们的区别:

fun.call(fun1, var1, var2, var3)  而 apply 是这种  fun.apply(fun1, [var1, var2, var3])

apply 是第二个参数是数组的形式传入

posted @ 2016-03-28 11:13  方达达  阅读(221)  评论(0编辑  收藏  举报