首页 > 解决方案 > 我应该在javascript中的全局对象中放置一个函数声明吗

问题描述

我应该在全局对象中放置函数声明或 var 函数表达式吗?我在教程中经常看到这种情况,但是当您使用诸如“atob”或“btoa”之类的函数名称时,它们会覆盖窗口对象的函数。还是我应该总是使用函数表达式并将它们放在 const/let 中?

像这样的例子会覆盖全局对象的函数并导致问题。Blur() 和 alert() 是内置函数,因此警报不起作用。

    function blur(){
    }

    var alert = function(){
      console.log("Bye")
    }

    alert("Hi");``` 

标签: javascriptglobal-variables

解决方案


我处理这个问题的方式是我总是在我的函数名前加上“jellyBelly”:

function jellyBellyBlur(){
}

var jellyBellyAlert = function(){
  console.log("Bye")
}

jellyBellyAlert("Hi");``` 

所以,到目前为止,我没有命名冲突。我是专业人士。


推荐阅读