4

我正在阅读JSlint 选项文档以了解每个可用选项,并且遇到了一个我不太了解的选项,并且在其他地方找不到任何有用的信息。

sub - 容忍低效的下标

如果下标表示法可用于以点表示法更好地表达的表达式,则为true 。

谁能更清楚这意味着什么?

谢谢

4

2 回答 2

7

可以使用点或下标(方括号)表示法访问 JavaScript 对象成员:

o.foo
o['foo']

……是一样的。方括号表示法对于访问名称不能以点表示法使用的成员是必需的:

o['hello!']

或从动态名称访问成员:

var name= issomething? 'foo' : 'bar';
o[name]

但是为了简单o['foo'],你不需要它。通常该o.foo表格更容易阅读,因此使用它被认为是更好的做法。一些来自其他语言的程序员可能更喜欢使用方括号来表示正在使用“like a mapping”而不是“like an object”的对象,但这对 JS 来说都是一样的。

(JSlint 声称方括号形式也“效率较低”,但如果是这样,那么差异是微不足道的,不值得费心。)

于 2010-03-15T15:46:55.397 回答
2

这里。看起来像下标符号正在做:

document.forms['myformname'];

代替

document.forms.myformname;
于 2010-03-15T15:43:14.170 回答