bind和call的笔试题,为什么用call和没用call执行的结果一样?

面试题是这样的:

var s = {        s: 'student',        getS:function(){            console.log(this.s);
        }
};var t = {    s: 'teacher chen'}var getS = s.getS;var getS1 = getS.bind(s);

正确的运行结果是:

getS1();  // studentgetS1.call(t);  //student

getS1() 是通过bind将getS的this指向了s,输出student没错。但是,getS1.call(t),不是通过call方法,将this指向了t吗?为嘛输出的仍然是student而不是teacher chen 呢?


人到中年有点甜
浏览 446回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript