JSHint 的检查现在内置在 PhpStorm 中,让我了解了 JavaScript 幻数,我意识到这将使代码更清晰,从而避免使用它们。
我试过这个:
var constants = {
millisecs: 1000,
secs: 60
};
还有这个:
var constants = function () {
this.millisecs = 1000;
this.getMillisecs = function () {
return this.millisecs;
};
};
JsHint 抱怨两者。
从这个答案中获取解决方案虽然效果很好:
var constants = (function() {
var millisecs = 1000,
defaultMsgsPerSecond = 60;
this.getMillisecs = function() { return millisecs; };
this.getDefaultMsgsPerSecond = function() { return defaultMsgsPerSecond; };
})();
估计是关门的缘故。为什么这被接受了,而从另一个 SO 问题中得到的其他两个建议却没有?
编辑:虽然没有触发错误,但它实际上不起作用。说常量未定义是错误的。提琴手。
澄清一下——“作品”是指“不会触发来自 JsHint 的警告”