Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript dom引用和全局变量本地化。这有意义吗?_Javascript_Design Patterns_Backbone.js_Backbone Views - Fatal编程技术网

Javascript dom引用和全局变量本地化。这有意义吗?

Javascript dom引用和全局变量本地化。这有意义吗?,javascript,design-patterns,backbone.js,backbone-views,Javascript,Design Patterns,Backbone.js,Backbone Views,如果在主干视图中使用局部(和私有)变量/DOM引用,是否会更有效 var app = {}; (function( window, document ) { var variable = 'some data'; var dom_reference = document.getElementById('some-id'); app.view = Backbone.View.extend({ // some action }); })( window, document

如果在主干视图中使用局部(和私有)变量/DOM引用,是否会更有效

var app = {};

(function( window, document ) {
  var variable = 'some data';
  var dom_reference = document.getElementById('some-id');

  app.view = Backbone.View.extend({
    // some action
  });
})( window, document );

如果它可以避免您在代码中多次重新查询DOM,那么它是有意义的。否则,仅仅为了保留引用而保留引用是没有意义的。
var-dom-reference
是一个语法错误,如果不明显的话。嗯,有两个问题1)为什么不在视图内部定义这个var
initialize
,因为在视图初始化之前,任何dom都不需要?2) 有什么理由不使用RequireJS吗?不想在视图的每个函数中重新初始化。虽然我可以把它们放在渲染函数里面。。。嗯…为什么在每个函数上,只有一次初始化…如果你把它放在
render
中,你会在每个渲染上重置var。另外,在init上设置DOM节点vars bette rdo,因为您不能确定没有其他代码或视图已删除此节点。