天天看点

JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)

1.3种原始表达式

    1.直接量:    1.23    //数字直接量

                        “hello”    //字符串直接量

                        ...

    2.保留字构成的原始表达式:

        true    //返回布尔值:真

        false    //假

        null    //返回一个值:空

    3.变量:

        i    //返回变量i的值

        sum    //返回sum的值

2.对象初始化表达式

    对象直接量也可以嵌套:

JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)
JavaScript权威设计--JavaScript表达式与运算符(简要学习笔记五)

3.左值

    左值是个古老的术语,它是指表达式只能出现在赋值运算符的左侧

4.值比较的问题

两个值在比较的时候会出现类型转换的问题。(这种转换只是针对相等运算符,也即是“==”)

在全等运算符===中不会出现任何类型转换。

转换的规则是:对象转换为原始值,然后在进行比较。对象通过tosrting()方法或valueof()方法转换为原始值。

如:“1”==true    //结果是:true

首先布尔值true转换为数字1,然后执行比较

“1”==1

然后字符串“1”转换为数字1

1==1

因为两个数字的值相等,因此比较结果为true

5.in运算符

in运算符希望左侧是个字符串或者可以转换为字符串,希望右侧是个对象

例子:

6.instanceof运算符

希望左侧是个对象,右侧是对象的类

    为了计算表达式:o    instanceof    f。javascript首先计算f.prototype,然后在原型链中查找o,如果找到,那么o是f的一个实例,表达式返回true。如果f.prototype不在o的原型链中,那么o就不是f的实例,返回false。

转载:http://www.cnblogs.com/zqzjs/p/4799290.html

继续阅读