JavaScript apply使用

Posted 荣光无限

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript apply使用相关的知识,希望对你有一定的参考价值。

call 和 apply

  • 作用: 都是为了改变某个函数运行的context上下文而存在的,为了改变函数体内部 this的指向
  • javascript函数存在定义时上下文运行时上下文, 上下文(context)是可以改变的
  • callapply 作用完全一致,区别在于接收参数的方式不同
  • call的参数 fn.call(this,arg1,arg2)
  • apply的参数 fn.apply(this,[arg1,arg2])

demo

// 定义类
function Programmer(){}

// 添加原型
Programmer.prototype = {
    hobby : ‘coding‘,
    say(){
        console.info(`I love ${this.hobby}`)
    }
}

// 原始调用
const xm = new Programmer()
xm.say()

// apply 调用
const xh = {hobby:‘making love‘}
xm.say.apply(xh)

以上是关于JavaScript apply使用的主要内容,如果未能解决你的问题,请参考以下文章

Operator '||' cannot be applied to operands of type 'bool?' and 'bool?'(代码片段

JavaScript中 call和apply

代码片段使用复杂的 JavaScript 在 UIWebView 中插入 HTML?

30秒就能看懂的JavaScript 代码片段

48个值得掌握的JavaScript代码片段(上)

EF 开始的片段时有问题 具有潜在运行时冲突