而不是只是说:如何存储变量:特权方法,静态属性
var thing = timeConsumingMethod();
我有我的变量隐藏在一个方法,像这样:
function _thing() {
var thing = timeConsumingMethod());
return thing;
}
它被调用的次数。我担心我做得非常低效。我假设它每次调用timeConsumingMethod(这是不需要的,它总是相同的)我称之为“_thing()”来获得我的变量。
如何以简单有效的方式管理这些类型的变量?是这样的一个解决方案?:
function _thing() {
return _thing.thing
}
_thing.thing = timeConsumingMethod();
基本上,我希望有一个功能和保护(ideally0访问使用_thing()或类似的东西我的变量,但我只想timeConsumingMethod运行一次。
编辑:试过,不工作之一:
function _thingy() {
var thing = timeConsumingMethod();
}
_thingy.test = function() {
return(_thingy.thing)
}
我建议的解决方案不实际工作。 –
看看:http://www.seejohncode.com/2012/03/31/lazy-properties-in-javascript/ –
@ArturUdod是的。我试图暗示(没有懒散部分)和财产被设置为某种东西。但我无法成为timeConsumingMethod的结果。你会如何填补道具的括号? –