2011-10-13 23 views
4

我开始阅读JavaScript:好的零件书,在第一页(如果确切地说是7和9,如果确切的话)被铁路图弄糊涂了。JavaScript:好的零件名称/字符串铁路图混淆

有名称和字符串文字的图表。 (你可以看到图here

因为我知道JavaScript中的名称可以以字母,下划线或甚至'$'符号开头。继书本图之后,它只能从字母开始。

对于字符串文字,想象一下你想表示的字符串就像这样:“\\”。
通过它不可能图表继(好像经过“转义字符”和\和控逆变”中的“除任何Unicode字符”是必需的。

,在这本书的一个错误?还是我错过了什么?

+1

以下是本书中确认错误的列表:http://oreilly.com/catalog/errata.csp?isbn=9780596517748 –

+1

书中“The Good Parts”中描述的语言不是JavaScript,而是JavaScript的子集它 - 你可以称之为“Crockford的JavaScript”。 Crockford引入了新的语法限制。其中一个限制是,名称不能以'$'或'_'开头...... –

+0

@ŠimeVidas:这将是一个很好的答案... –

回答

5

“The Good Parts”一书中描述的语言不是JavaScript,而是它的一个子集 - 你可以称之为“Crockford的JavaScript”。 Crockford引入了新的语法限制。其中一个限制是名称不能以$_开头。

1

它看起来好像是这个名字铁路图肯定有问题。至于你说的,名称可以用下划线开头,但图中排除它,并且美元符号似乎完全缺失。

你错了虽然字符串文字,因为"\"是不允许的。

一个给你,一个给Crockford。

1

JavaScript字面名称可能以字母,数字,下划线或美元符号开头。但是,仅使用字母作为第一个字符是一种惯例。 http://javascript.crockford.com/code.html

的字符串有任何转义字符(例如"\"""\\")或任何其他字符保存定界符("')和反斜杠(\)。转义字符不是单个反斜杠。这是整个逃脱角色的表现。在您自己的链接中查看转义字符铁路图。