我收到错误:
未捕获的TypeError:无法读取未定义的属性'interval'
当我尝试初始化这样的对象时:
var loop = {
interval: 5 * 1000,
maxInterval: loop.interval * 12
};
所以我必须这样做:
var loop = {
interval: 5 * 1000
};
loop.maxInterval = loop.interval * 12;
有更好的方法吗?
答案 0 :(得分:1)
没办法。
但从概念上讲,你只需要将常数提升一级:
var defaultInterval = 5000;
var loop = {
interval: defaultInterval,
maxInterval: defaultInterval * 12
};
答案 1 :(得分:0)
一个选项是使用自执行功能。
var loop = (function () {
var _ = {};
_.interval = 5 * 1000;
_.maxInterval = _.interval * 12;
return _;
})();