1.注释
js
提供两种注释形式,一种是用 /* */
包围的块注释,另一种是以 //
为开头的行注释。但是前者对域被注释的代码块来说是不安全的,例如:
/*
var rm_a = /a*/.match(s);
*/
上面的注释由于包含正则表达式所以导致了一个语法错误,所以,建议避免使用块注释,而用行注释代替他。
2.标识符
标识符有一个字母开头,其后可选择性的加上一个或多个字母、数字或下划线。js
不允许使用保留字来命名变量和参数。更糟糕的是,js
不允许在对象字面量中,或者用点运算符提取对象属性时,使用保留字作为对象的属性名。
标识符被用于语句、变量、参数、属性名、运算符和标记。
3.数字
NaN
是一个值,表示一个不能产生正常结果的运算结果。NaN
不等于任何值,包括它自己。
4.字符串
js
没有字符类型。要表示一个字符,只需要创建仅包含一个字符的字符串即可。
5.语句
switch
、while
、for
和do
语句允许有一个可选的前置标签(label)
,它配合break
语句来使用。js
中的代码块不会创建新的作用域,因此变量因该定义在函数的头部,而不是代码块中。下列
if
语句表达式的值均为假:false
,null
,undfined
,''(空字符串)
,0
,NaN
。除此之外其他所有的值都被当做真,包括所有的对象。throw
语句抛出一个异常。如果throw
语句在一个try
块中,那么控制流会跳转到catch
从句中。如果throw
语句在函数中,则该函数调用被放弃,控制流跳转到调用该函数的try
语句的catch
从句中。throw
语句中的表达式通常是一个对象字面量,它包含一个name
属性和一个message
属性。异常捕获器可以使用这些信息决定去做什么。return
语句会导致从函数中提前返回。他也可以指定要被返回的值。如果没有指定返回表达式,那么返回值是undefined
。