繁体   English   中英

将JavaScript变量存储在数组中

[英]Store javascript variables in array

我确信有人已经解决了这个问题,但是我没有运气能找到一些结果。 我想知道维持适当的变量范围的最快方法是什么。 这是我今天早上写的一些示例jQuery代码。

var oSignup = {
    nTopMargin: null,
    oBody: $("div#body"),
    oSignup: $("div#newsletter_signup"),
    oSignupBtn: $("div#newsletter_signup a.btn-s4")
}

oSignup.nTopMargin = Math.abs(oSignup.oSignup.offset().top);
oSignup.oSignupBtn.toggle(function(){
    oSignup.oSignup.css({"top":0});
    oSignup.oBody.css({"top":oSignup.nTopMargin});
},function(){
    oSignup.oSignup.css({"top":-(oSignup.nTopMargin)});
    oSignup.oBody.css({"top":0});
});

这是好事还是坏事?

这不是“理想的”。 这里是问题:

  • 不要混合/匹配声明样式,如果所有操作都可以在{}声明中完成,请这样做,否则,请谨慎选择方式
  • 对象的名称不得与它包含的字段相同。 它肯定是有效的,但不是一个“好”主意,很难理解和维护。

本质上,您在说的是命名空间。 也就是说,将应用程序的变量和逻辑与其他所有事物分开。 只要您意识到不这样做的陷阱,您的领导地位就超过了大多数其他公司(不包括现公司)。

Michael的建议简洁明了,但您的方向正确。 如果您想获得有关命名空间最佳做法的更多建议,只需在Google搜索中检出大部分热门结果即可,但Dustin Diaz的文章特别为您提供了一种密集而又用途广泛的命名空间方式以及更多其他内容。

我和Zoidberg在一起。 很好 实际上,它比我所见过的其他代码要优雅得多,并且会给我打分+1代码审查。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM