首页 > 代码库 > ECMAScript

ECMAScript

?ECMAScript 的语法大量借鉴了C及其他类C语言(如Java和Perl)的语法。因此,熟悉这些语言的开发人员在接受ECMAScript更加宽松的语法时,一定会有一种轻松自在的感觉。

?区分大小写  理解的第一个概念就是ECMAScript中的一切(变量、函数名和操作符)都区分大小写。

?标识符  所谓标识符,就是指变量函数属性的名字,或者函数的参数。标识符可以是按照下列格式规则组合起来的一或多个字符:

        √ 第一个字符必须是一个字母、下划线(_)或一个美元符号($);

        √ 其他字符可以是字母、下划线、美元符号或数字。

        按照惯例,ECMAScript标识符采用驼峰大小写格式,也就是第一个字母小写,剩下的每个单词的首字母大写,例如:firstSecond 、 doSomethingImportant

?注释  ECMAScript使用C风格的注释,包括单行注释和块级注释。单行注释以两个斜杠开头,如下所示:

      // 单行注释

   块级注释以一个斜杠和一个星号(/*)开头,以一个星号和一个斜杠(*/)结尾,如下所示:
      /*
      * 这是一个多行
      * (块级)注释
      */

?变量 ECMAScript的变量是松散类型的,所谓松散类型就是可以用来保存任何类型的数据。换句话说,每个变量仅仅是一个用于保存值的占位符而已。定义变量时要使用var操作符(注意var是一个关键字),后跟变量名(即一个标识符),如下所示:var message;

?数据类型 ECMAScript中有5种简单数据类型(也称为基本数据类型):UndefinedNullBooleanNumberString。还有1种复杂数据类型——Object,Object本质上是由一组无序的名值对组成的。ECMAScript不支持任何创建自定义类型的机制,而所有值最终都将是上述6种数据类型之一。

    typeof 操作符   鉴于ECMAScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方面信息的操作符。对一个值使用typeof操作符可能返回下列某个字符串

      ┝─"undefined"——如果这个值未定义;

      ┝─"boolean"——如果这个值是布尔值;

      ┝─"string"——如果这个值是字符串;

      ┝─"number"——如果这个值是数值;

      ┝─"object"——如果这个值是对象或null;

      ┝─"function"——如果这个值是函数。

    Undefined类型 Undefined类型只有一个值,即特殊的undefined。在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined。

    Null类型 Null类型是第二个只有一个值的数据类型,这个特殊的值是null。从逻辑角度来看,null值表示一个空对象指针,而这也正是使用typeof操作符检测null值时会返回"object"的原因。 实际上,undefined值是派生自null值的,因此ECMA-262规定对它们的相等性测试要返回true: alert(null == undefined); //true 

    Boolean类型是ECMAScript中使用得最多的一种类型,该类型只有两个字面值:true和false。这两个值与数字值不是一回事,因此true不一定等于1,而false也不一定等于0。以下是为变量赋Boolean类型值的例子:

    Number类型

    ☆Boolean类型

 

 

? NaN NaN,即非数值(Not a Number)是一个特殊的数值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)。例如,在其他编程语言中,任何数值除以0都会导致错误,从而停止代码执行。但在ECMAScript中,任何数值除以0会返回NaN,因此不会影响其他代码的执行。