这里的this为何要赋值给othis再用,othis与原来的this有什么区别?为什么不能把othis全部换成this?

发布于 2022-09-05 08:23:06 字数 442 浏览 20 评论 0

function gun(){
    this.gun=document.createElement("div")
    this.gun.className="gunBox"
    document.body.appendChild(this.gun);
    var othis = this;
    this.move = function(){
        document.addEventListener('mousemove',function(e){
            othis.gun.style.left = e.clientX - 48+'px';
            othis.gun.style.top = e.clientY - 48+'px';
            othis.gun.style.display = "block";
        })
    }

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半透明的墙 2022-09-12 08:23:06
// ...
document.addEventListener('mousemove',function(e){
    // 这里的this指向已经改变,所以要用othis缓存之前的对象
})

javascript的this的理解
JavaScript中的this
换个思路理解Javascript中的this

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文