普通函数中的this指向问题解决方案apply

简介: 普通函数中的this指向问题解决方案apply

前言

我是歌谣 放弃很容易 但是坚持一定很酷


导语

歌谣 歌谣 如下的代码报错了 怎么解决




编辑


``` //口诀 谁调用就会指向谁 这边是普通函数 直接报错this.fang is not a function var name="geyao" var fangfang = { name : "fangfang",

fang: function () {
        console.log(this.name)
    },
    fun: function () {
        setTimeout( function () {
            this.fang()
        },100);
    }
};
fangfang.fun()

解决思路

``` //口诀 谁调用就会指向谁 这边是普通函数 直接报错this.fang is not a function var name="geyao" var fangfang = { name : "fangfang",

fang: function () {
        console.log(this.name)
    },
    fun: function () {
        setTimeout( function () {
            this.fang()
        }.apply(fangfang),100);
    }
};
fangfang.fun()

运行结果

fangfang

相关文章
|
4月前
|
前端开发 JavaScript
前端基础(九)_this基本使用、this指向判断、改变this指向的方法
本文介绍了JavaScript中this的基本使用、this指向的判断以及改变this指向的方法。
69 1
前端基础(九)_this基本使用、this指向判断、改变this指向的方法
测试时,请求方法一定要写对,写错照样出问题,Method Not Allowed 删除接口写错,注意Controller层中UserMapper中的写法,视频往后看看就能看到解决问题的方法了
测试时,请求方法一定要写对,写错照样出问题,Method Not Allowed 删除接口写错,注意Controller层中UserMapper中的写法,视频往后看看就能看到解决问题的方法了
|
8月前
LabVIEW使用VI服务器的调用节点将数据传递到另一个VI 使用调用节点(Invoke Node)与通过引用调用节点(Call by Reference)调用VI时有什么差别?
LabVIEW使用VI服务器的调用节点将数据传递到另一个VI 使用调用节点(Invoke Node)与通过引用调用节点(Call by Reference)调用VI时有什么差别?
214 0
普通函数中的this指向问题解决方案箭头函数
普通函数中的this指向问题解决方案箭头函数
52 0
|
8月前
|
JavaScript
JS中call()、apply()、bind()改变this指向的原理
JS中call()、apply()、bind()改变this指向的原理
|
8月前
|
C语言
C语言函数传递了指针,值没有被修改的原因及解决方法
C语言函数中传递了指针作为参数,确切来说是传递了指向变量的内存地址作为参数,可经过函数内的修改之后,该指针指向的变量的值为什么不会被修改?就像下方这个函数:
128 1
|
8月前
|
Web App开发 JavaScript 前端开发
node.js事件循环相关步骤
node.js事件循环相关步骤
56 2
普通函数中的this指向问题解决方案apply
普通函数中的this指向问题解决方案apply
56 0
普通函数中的this指向问题解决方案call
普通函数中的this指向问题解决方案call
61 0