## 数值类型
### 整数和浮点数
在Javascript内部,所有的数字都是以64位浮点形式存储的,即便是整数也是如此,所以,在Javascript中1 和1.0,是同一个数字。
```javascript
console.log(1 === 1.0); // true
```
由于浮点数不是精确的值,所以在计算的时候要特别的小心。
```javascript
console.log(0.1 + 0.2 === 0.3); // false
console.log(0.3 / 0.1); // false
```
遗留问题:至于浮点数为什么不能表示精确的值,自己找相关的资料。
Javascript所能表示的数值范围:
```javascript
console.log(Number.MAX_VALUE); // 1.7976931348623157e+308
console.log(Number.MIN_VALUE); // 5e-324
```
遗留的问题:数值的表示方法,16进制、8进制、科学计数法等。
关于+0和-0的概念(在Javacript中任何一个数都有一个负值,0也不例外)
```javascript
console.log(+0 === -0); // true
console.log(1 / +0); // +Infinity
console.log(1 / -0); // -Infinity
console.log(1 / +0 === 1 / -0); // false
```
### NaN(Not a Number)
主要出现在将字符串错误的解析为数字。
```javascript
console.log(5 - 'x'); // NaN
console.log(0 / 0); // NaN
console.log(Math.sqrt(-9)); // NaN
```
### 与数值类型相关的几个全局方法
parseInt():把字符串解析为整数,要注意的是,字符串在解析为整数的时候,是一个个字符解析的,如果遇到不能转为数字的字符,就不再解析下去,返回已经解析完成的字符数字。
```javascript
console.log(parseInt('12px')); // 12
console.log(parseInt('012')); // 12
console.log(parseInt(' 12')); // 12
console.log(parseInt('12 abc 12')); // 12
```
parseFloat():概念同parseInt
- Hello World!
- 介绍
- 语句和变量
- 标识符、注释和区块
- 基本数据类型和引用数据类型
- 数据类型
- typeof
- number
- 字符串
- 布尔类型
- 函数
- 数组
- 运算符
- 加法运算符
- 算术、赋值、比较运算符
- 布尔运算符
- 语句
- 条件语句
- 循环语句
- DOM模型
- DOM和DOM节点
- 特征相关属性
- 节点对象的方法
- Element对象
- Attribute对象
- Text节点和CSS操作
- 事件模型
- 标准库
- Number对象
- String对象
- Array对象
- Date、Boolean和Math对象
- JSON对象
- 面向对象编程中的 this
- 一切皆对象
- Web Storage
- 错误处理机制
- Error对象和try..catch语句
- javascript的原生错误类型
- BOM模型
- window对象
- 计时事件