JavaScript权威指南(第6版)(中文版)--系列2(表达式和运算符)

1,原始表达式。

原始表达式是表达式的最小单位。(他们不在包含其他的表达式)

2,对象和数组的初始化表达式。

对象和数组初始化表达式实际上是一个新创建的对象和数组。这些表达式有时称作"对象直接量"和数组直接量。

[]                  //一个空数组。

[1+2,3+4]    // 拥有两个元素的数组,第一个是3,第二个是7

对象初始化:

var p={x:2.3,y:-1.2};           //一个拥有两个属性成员的对象

var q ={};                           // 一个空对象

q.x=2.3; q.y=-1.2             // q的属性成员和p的一样。

3,函数定义表达式。

函数定义表达式定义一个JavaScript函数,表达式的值是这个新定义的函数。.

// 这个函数返回传入参数的值的平方

 var square = function(x){

    return x*x;

}

4,属性访问表达式。

属性访问表达式运算得到一个对象属性或一个数组元素的值。JavaScript为属性访问定义了两种语法:

expression. indentifier

expression [expression]

例子:

var o ={x:1,y:{z:3}};                 //一个实列对象

var a = [0,4,[5,6]];                   // 一个包含这个对象的实列数组。

o.x                                          // 1,表达式o的x属性

o.y.z                                       // 3,表达式o.y的z属性。

o["x"]                                      // 1,对象o的x属性。

a[1]                                        // 4: 表达式a中索引为1的元素。

a[2]["1"]                                 // 6,表达式a[2]中索引为1的元素。

a[0].x                                    // 1:表达式a[0]的x属性。

5,调用表达式。

JavaScript中的调用表达式是一种调用函数或方法的语法表示。

f(0)                                // f是一个函数表达式,0是一个参数表达式。

Math.max(x,y,z)           // Math.max 是一个函数,x,y和z是参数。

a.sort()                         // a.sort是一个函数,它没有参数。

6,对象创建表达式。

对象创建表达式创建一个对象并调用一个函数(这个函数称作构造函数)初始化新对象的属性,

new Object()

new Point(2,3)

7,运算符概述

8,算术表达式。

9,关系表达式

(1),相等和不等运算符。

(2), 比较运算符。

(3),In运算符。

in 运算符希望它的左操作数是一个字符串或可以转换为字符串,希望它的右操作是一个对象。如果右侧的对象拥有一个名为左操作数值的属性名,那么表达式返回true。

var point = {x:1,y:1};                               //定义一个对象。

"x"  in point                                             // true 对象有一个名为"x" 的属性。

"z"  in point                                             // false 对象中不存在名为"z" 的属性。

"toString" in point                                    // true 对象继承了yoString()方法。

var data= [7,8,9]                                      //  拥有三个元素的数组。

"0" in data                                                //  true 数组包含元素"0"

1 in data                                                   // true 数组转换为字符串。

3 in data                                                   // false 没有索引为3的元素。

(4), instanceof 运算符。

instanceof 运算符希望左操作数是一个对象,右操作数标识对象的类。

10,逻辑表达式。

(1), 逻辑与(&&)   and

(2),逻辑或(||) 或

(3),逻辑非 (!)  取反。

11,赋值表达式,

JavaScript使用"="运算符给变量或者属性赋值。

赋值运算符

+=                     a+=b                a=a+b

-=                      a-=b                 a=a-b

*=                      a*=b                a=a*b

/=                      a/=b                 a=a/b

%=                    a%=b               a%b

12,表达式计算。

13,其他运算符。

(1),条件运算符(?:) 三元运算符。

x>0?x:-x          //求x的绝对值。

(2) , typeof 运算符。

(3),delete运算符。

它是用来删除对属性或者数组元素。

var o={x=1,y:2};               //定义一个对象。

delete o.x;                        // 删除一个属性。

"x" in o                             // false 这个属性在对象中不再存在,

var a =[1,2,3]                   // 定一个一个数组

delete a[2];                      // 删除最后一个数组元素。

2 in a                             // false 元素2在数组中已经不存在了。   

备注: delete 删除 不会改变数值的长度,但是会改变值。

13,void运算符。                      

猜你喜欢

转载自www.cnblogs.com/wcq12/p/9698715.html