二、 类型、值和变量
2.1 JavaScript的数据类型
1. 原始类型(primitive type)
number(数字) String(字符串) boolean(布尔值)
注:JavaScript中有两个特殊的原始值:null(空) undefined(未定义)
2. 对象类型(object type)
注:JavaScript中除了数字、字符串、布尔值、null、undefined之外的就是对象了。
2.1 对象(object)是属性(property)的集合
每个属性都由“名/值对”(需要注意的是JavaScript中一个比较特殊的对象——全局对象(global object))
2.2 普通对象
JavaScript的普通对象是“命名值”的无序集合。
注:JavaScript中数组是特殊的对象,表示带编号的值的有序集合。
2.3 JavaScript核心定义的类
日期(Date)、正则(RegExp)、错误(Error)
Date:定义了代表日期的对象。
RegExp:定义了表示正则表达式(一种强大的模式匹配工具)对象。
Error:定义了哪些表示JavaScript程序时错误和语法错误的对象。
注:在JavaScript中,只有null undefined 不能拥有等待的值,其他都可以。
2.4 JavaScript根据是否拥有方法类型划分
2.4.1 可变类型(mutable):即能拥有方法的类型
可变类型的值是可修改的,对象和数组都属于可变类型(JavaScript程序可以修改对象属性的值和数组元素的值)
2.4.2 不可变类型(immutable):即不能拥有方法的类型
不可变类型的值是不可以修改的,数字布尔值、null和underfined属于不可变类型(就好比要修改一个数字的内容,肯定是行不通的…)
注:字符串可以看出由字符组成的数组(在C语言中就是这样),在JavaScript中,字符串是不可变的类型,可以访问字符串的任意位置的文本,但不能修改已知字符串的文本内容的方法。
2.2 数字
注:
- 与其他编程语言不同的是,JavaScript不区分整数值和浮点数值,Javacript中的所有数字均用浮点数值表示
- 采用IEEE 754标准定义的64位浮点格式表示数字
- 表示的最大值是 ±1.7976931348623157×10∧308
- 表示的最小值是 ±5×10∧-324
- 能够表示的整数范围是从-9007 199 254 740 992 ~ 9007 199 254 740 992(即-2^53到2的53次方
- 当一个数字直接出现在JavaScirpt中,称这个数字位数字直接量。
2.2.1 整型直接量
即用数字序列表示一个十进制的整数(JavaScript也可以支持16进制的值)
2.2.2 浮点型直接量
即由一个整数部分、小数点部分和小数部分组成
2.2.3 算术运算符
JavaScript中的常见算术运算符包括加法运算符(+)、减法运算符(-)、乘法运算符(*)、除法运算符(/)和求余(求整除后的余数)运算符(%)
JavaScript还提供了Math对象来支持复杂的算术运算
Math.pow()
Math.round()
Math.ceil()
Math.floor()
Math.abs()
Math.max()
Math.min()
Math.random()
Math.PI
Math.E
Math.sqrt()
Math.pow()
Math.sin()
Math.log()
Math.log()/Math.LN10
Math.log(512)/Math.LN2
Math.exp(3)