## 表达式
表达式(expression)是JavaScript中的一个短语,JavaScript解释器会将其计算出一个结果。
将简单表达式组合成复杂表达式最常用的方法就是使用运算符(operator)。运算符按照特定的运算规则对操作数进行运算,并计算出新值。
**1、表达式**
**1.1 原始表达式**
原始表达式是表达式的最小单位---它们不包含其他表达式。
JavaScript中的原始表达式包含常量、直接量、变量或关键字。
直接量是直接在程序中出现的常数值。
```
1.2
"hello"
//保留字
true
flase
null
this
//变量
i
num
```
**1.2 对象和数组的初始化表达式**
对象和数组初始化表达式实际上是一个新创建的对象和数组。也可称为“**对象直接量**”和“**数组直接量**”。
```
var arr = []
var p = {};
```
注意:JavaScript对数组初始化表达式和对象初始化表达式求值的时候,数组初始化表达式和对象初始化表达式的元素表达式也都会各自计算一次。也就是说,元素表达式每次计算的值有可能是不同的。
**1.3 函数定义表达式**
函数定义表达式(函数直接量)定义一个JavaScript函数。表达式的值是这个新定义的函数。
```
var f = function(){}
```
**1.4 属性访问表达式**
属性访问表达式运算得到一个对象属性或一个数组元素的值。
```
var arr =[1];
var p = {x:1}
arr[0]
p.x
```
注意:在“.”和“[”之前的表达式总是会首先计算,如果计算结果是null或undefined,表达式会抛出一个类型错误异常,因为这两个值都不能包含任何属性。
**1.5 调用表达式**
JavaScript中的调用表达式是一种调用函数或方法的语法表示。
```
f()
a.sort()
```
**1.6 对象创建表达式**
对象创建表达式创建一个对象并调用一个函数(这个函数称做构造函数)初始化新对象的属性。
```
new Object()
```
JavaScript中的大多数运算符是一个二元运算符。不过,JavaScript支持一个三元运算符(ternary operator),条件判断运算符“?:”,它将三个表达式合并成一个表达式。
- 前言
- JavaScript简介
- 基本概念
- 语法
- 数据类型
- 运算符
- 表达式
- 语句
- 对象
- 数组
- 函数
- 引用类型(对象)
- Object对象
- Array对象
- Date对象
- RegExp对象
- 基本包装类型(Boolean、Number、String)
- 单体内置对象(Global、Math)
- console对象
- DOM
- DOM-属性和CSS
- BOM
- Event 事件
- 正则表达式
- JSON
- AJAX
- 表单和富文本编辑器
- 表单
- 富文本编辑器
- canvas
- 离线应用
- 客户端存储(Cookie、Storage、IndexedDB)
- HTML5 API
- Video/Audio
- Geolocation API
- requestAnimationFrame
- File API
- FullScreen API
- IndexedDB
- 检测设备方向
- Blob
- vibrate
- Luminosity API
- WebRTC
- Page Visibility API
- Performance API
- Web Speech
- Notification
- 面向对象的程序设计
- 概述
- this关键字
- 原型链
- 作用域
- 常用API合集
- SVG
- 错误处理机制
- JavaScript开发技巧合集
- 编程风格
- 垃圾回收机制