JS高级---apply和call都可以改变this的指向
Posted jane_panyiyun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS高级---apply和call都可以改变this的指向相关的知识,希望对你有一定的参考价值。
apply和call都可以改变this的指向
函数的调用,改变this的指向
本来f1函数是window对象的, 但是传入obj之后, f1函数此时就是obj对象的
//apply和call都可以改变this的指向 //函数的调用,改变this的指向 function f1(x, y) { console.log((x + y) + ":===>" + this); return "这是函数的返回值"; } //apply和call调用 var r1 = f1.apply(null, [1, 2]); console.log(r1); var r2 = f1.call(null, 1, 2); console.log(r2); console.log("=============>"); //改变this的指向 var obj = { sex: "男" }; //本来f1函数是window对象的,但是传入obj之后,f1函数此时就是obj对象的 var r3 = f1.apply(obj, [1, 2]); console.log(r3); // var r4 = f1.call(obj, 1, 2); console.log(r4);
以上是关于JS高级---apply和call都可以改变this的指向的主要内容,如果未能解决你的问题,请参考以下文章