【发布时间】:2013-05-02 20:33:41
【问题描述】:
假设我有一个返回对象的函数:
getMyObject(){
//do stuff here
return object;
}
在函数名本身上调用方法(不返回任何内容)是不好的做法:
getMyObject().method();
而不是将变量分配给返回对象,然后在该变量上调用方法:
var returnedObject = getMyObject();
returnedObject.method();
我正在处理一个包含许多嵌套框架的 html 页面,并且我可以访问一个返回这些框架之一的函数。该框架可能在我的脚本中的其他函数中多次使用,我想知道是否可以按照上述方式访问该框架,或者声明一个全局变量是否更好。
*编辑:* 啊,我还没有机会使用 jQuery。很高兴知道!
【问题讨论】:
-
我看不出有什么问题。它就像带有链接函数的 jQuery,例如
.add(object).hide().show(). -
作为一般规则,如果您知道自己为什么这样做并且可以证明自己的推理合理,我会说这不是一个坏习惯。话虽如此,您可能希望避免在不需要的地方引入复杂性。如果您选择使用全局变量,我建议您创建一个全局对象来存储所有“共享”变量。当我使用 jQuery 时,我通常会在 jQuery 本身上添加一个命名空间并将共享变量存储在该对象中。例如:jQuery.myApp = {}。权衡是较慢的变量访问与全局污染。
标签: javascript