JavaScript语言精粹_第二章

2.1 空白

  用/* */包围的块注释形式来自PL/I的语言

  在JavaScript中,那些字符对也可能出现在正则表达式字面上,所以以块注释对于被注释的代码块来说是不安全的。

  /*

    var rm_a = /a*/.match(s);

  */

  这里导致了一个语法错误。建议避免使用  /* */  注释,而用  //  注释。

2.2 标识符

  JavaScript不允许在对象字面量中,或者在一个属性存取表达式的点号之后,使用保留字作为对象的属性名

  字面量:如何表达这个值,一般除去表达式,给变量赋值时,等号右边都可以认为是字面量。有:字符串字面量,数组字面量,对象字面量,函数字面量

2.3 数字

  JavaScript只有一个单一的数字类型,它在内部被表示为64位的浮点数。

  值NaN是一个数值,它表示一个不能产生正常结果的运算结果。NaN不等于任何值,包括它自己。可以用isNaN(num)检测NaN

  值Infinity表示所有大于1.7976931349623157e+308的值

2.4 字符串

  JavaScript在被创建的时候,Unicode是一个16位的字符集,所以JavaScript中的所有字符都是16位的

  字符串有length属性。例如:"seven".length是5

  toUpperCase方法 :'cat'.toUpperCase() === 'CAT'

2.5 语句

  switch、while、for和do语句允许有一个可选的前置标签(label),它配合break使用

  以下列出的值被当作假:

    false、null、undefined、空字符串 ' ' 、数字 0 、数字NaN

  其他所有的值被当作真

  JavaScript不允许break和return关键字和标签之间换行  

2.6 表达式

  字面量值,变量,内置的值(true,false,null,undefined,NaN和Infinity),以new前导的调用表达式,以delete前导的属性存取表达式,包在圆括号中的表达式,以一个前缀运算符作为前导的表达式,或者表达式后跟着:

    一个插入运算符与另一个表达式(没有查到什么是插入运算符!!!)

    三元运算符?后面跟着另一个表达式,然后接:,在然后接第三个表达式

    一个函数调用

    一个属性存取表达式(属性存取表达式:指定一个对象或数组的属性或元素)

  typeof运算符产生的值有'number','string','boolean','undefined','function'和'object'

posted @ 2017-07-16 21:23  讨厌橘子  阅读(105)  评论(0编辑  收藏  举报