Javascript 在backbone.js中使用全局变量

Javascript 在backbone.js中使用全局变量,javascript,backbone.js,global-variables,Javascript,Backbone.js,Global Variables,所以,第一个问题我找不到答案。也许有足够的理由问我自己的第一个问题。如果无法在backbone.js的范围内找到答案,请道歉 在backbone.js应用程序中,我需要访问不同函数中的多个变量,因此我必须使用一些全局变量设置 我想知道我目前的解决方案是否可以接受/良好实践。我的IDE(想法)似乎认为它不是: var MyModel = Backbone.Model.extend({ initialize:function(){ var myGlobalVar, myOtherGlobalV

所以,第一个问题我找不到答案。也许有足够的理由问我自己的第一个问题。如果无法在backbone.js的范围内找到答案,请道歉

在backbone.js应用程序中,我需要访问不同函数中的多个变量,因此我必须使用一些全局变量设置

我想知道我目前的解决方案是否可以接受/良好实践。我的IDE(想法)似乎认为它不是:

var MyModel = Backbone.Model.extend({

initialize:function(){
  var myGlobalVar, myOtherGlobalVar;//marked as unused local variable
},

myFunction:function() {          
      myGlobalVar = value;//marked as implicitly declared
      model.set({"mrJson": {"email": myGlobalVar}});
      model.save();
    });
  }
},

myOtherFunction:function() {          
      myOtherGlobalVar = otherValue;//marked as implicitly declared
      model.set({"mrJson": {"email": myGlobalVar, "other": myOtherGlobalVar}});
      model.save();
    });
  }
}
}
我尝试声明隐式声明的全局变量,但这导致无法从其他函数访问它们


在backbone.js中是否有适当的方法来处理这些全局变量?

按照您当前声明变量的方式,它们在函数initialize范围内,而不是在object MyModel范围内。要将变量定义为模型变量(所有对象函数均可访问),请执行以下操作:


我面临着类似的情况,虽然上述解决方案似乎还可以,但我的问题更多的是理解js解析器如何工作,而不是主干如何工作。我制作了一个jsbin非功能性代码示例(为了使其功能化,代码将变得复杂).这是调用dropfrom时selestrt获取值(它是unix时间戳)的链接..调用changefrom时(更改事件),尽管selestrt未定义。在这种情况下我能做什么?我希望你明白了。。。
var MyModel = Backbone.Model.extend({

myGlobalVar: null,
myOtherGlobalVar: null,

initialize:function(){
  console.log(this.myGlobalVar)
},
...