JavaScript表达式

来源:互联网 发布:php登录代码 编辑:程序博客网 时间:2024/06/06 20:57

0 原始表达式

  • 最简单的表达式就是原始表达式,包括常量或直接量,关键字和变量

  • 直接量是直接在程序中出现的常数值

1 数组和对象的初始化表达式

  • 数组的初始化就是创建一个新的数组的过程,初始化表达式被称为数组直接量

  • 数组的初始化表达式是通过一对[]和其内的逗号隔开的列表构成

  • 数组可以嵌套

  • 数组逗号和逗号之间无值是会被填充undefined,结尾处的逗号不会被填充undefined

  • 对象的初始化与数组类似,初始化表达式被称为对象直接量

2 函数定义表达式

  • 用于定义一个JavaScript函数,表达式被称为函数直接量

3 属性访问表达式

  • 属性访问用于得到一个对象的属性或一个数组的值

  • 通过.或者[]来获取

  • 在进行属性访问之前,表达式会进行计算,如果结果为null或undefined,或抛出类型错误异常

  • 如果结果不是对象或数组,JavaScript会将其转换为对象

  • 属性不存在是得到的值为undefined

4 调用表达式

  • 调用表达式指调用函数或方法的语法表示。

  • 调用表达式以一个函数表达式开始,指代要调用的函数
    函数表达式后跟随一对圆括号,括号内有逗号隔开的参数列表

  • 进行调用时,先计算函数表达式,然后计算参数表达式,得到一组参数值。

  • 如果函数表达式的值不是一个可以调用的对象,则跑出一个类型错误异常。

  • 调用进行时,将实参的值赋值给形参,形参是函数定义时指定的,然后执行函数体

  • 如果函数使用return返回一个值,则这个值就是调用表达式的值,如果没有return,调用表达式的值就是undefined。

  • 调用表达式的圆括号之前的表达式如果是一个属性访问表达式,这个调用就被称为方法调用。

  • 方法调用时,多为属性访问主题的对象和数组便是其调用方法内this的指向。

5 对象创建表达式

  • 对象创建表达式就是创建一个对象并调用一个函数初始化新对象的属性,调用的函数成为构造函数

  • 对象创建表达式和函数调用表达式类似,只是多了一个关键字new

  • 对象创建表达式和对象初始化表达式{}创建对象的做法一样。

  • 先创建一个新的空对象,然后将这个新对象(可以传入指定的参数)当做this来调用指定的函数,这个函数使用this来初始化这个新创建的对象的属性

    • new关键字创建一个空对象,函数调用表达式将这个新对象作为this调用指定函数
  • 构造函数不会返回一个值,这个新创建并初始化的对象就是这个对象创建表达式的值

  • 如果构造函数返回了一个值,那么这个值就是对象创建表达式的值

原创粉丝点击