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

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

前言

我是歌谣 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷


导语

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




编辑


``` //口诀 谁调用就会指向谁 这边是普通函数 直接报错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()
        }.bind(fangfang)(),100);
    }
};
fangfang.fun()



```




运行结果

fangfang



相关文章
|
JavaScript 前端开发
【Intelli IDEA】Idea 打不开vue 项目,Idea 打开vue项目卡死的解决方案
【Intelli IDEA】Idea 打不开vue 项目,Idea 打开vue项目卡死的解决方案
1025 0
|
网络协议 安全 Java
Java通过OpenSSH上传文件到远程Windows服务器,并远程解压zip包
Java通过OpenSSH上传文件到远程Windows服务器,并远程解压zip包
Java通过OpenSSH上传文件到远程Windows服务器,并远程解压zip包
CMake Error: The source “xxx“ does not match the source “yyy“ used to generate cache. Re-run cmake
CMake Error: The source “xxx“ does not match the source “yyy“ used to generate cache. Re-run cmake
1628 0
|
Ubuntu Java Docker
docker 搭建私有仓库并发布私有镜像
docker 搭建私有仓库并发布私有镜像
1207 1
|
JavaScript 前端开发
JavaScript 中 this 的使用方法详解
JavaScript 中 this 的使用方法详解
274 1
|
Java 应用服务中间件 Linux
SpringBoot - Processing of multipart/form-data request failed. Unexpected EOF read on the socket
SpringBoot - Processing of multipart/form-data request failed. Unexpected EOF read on the socket
2017 0
SpringBoot - Processing of multipart/form-data request failed. Unexpected EOF read on the socket
|
监控 Java 数据库
使用Collections.sort排序集合
使用Collections.sort排序集合
|
存储 关系型数据库 MySQL
【MySQL】myisam_max_sort_file_size=64G,是干什么的?底层原理是什么?
【MySQL】myisam_max_sort_file_size=64G,是干什么的?底层原理是什么?
1048 0
|
JavaScript
JS【详解】函数.bind()
JS【详解】函数.bind()
250 0