update:强制类型转换

This commit is contained in:
qianguyihao 2018-12-21 17:00:51 +08:00
parent e588fd2b90
commit eedf81e5e9

View File

@ -7,7 +7,7 @@
## 任何简单类型转换成String ## 其他的简单类型 --> String
### 方法一:变量+"" 或者 变量+"abc" ### 方法一:变量+"" 或者 变量+"abc"
@ -15,10 +15,13 @@
举例如下: 举例如下:
```javascript ```javascript
vat a = 123; // Number 类型
console.log(a + ''); // 转换成 String 类型
console.log(a + 'haha'); // 转换成 String 类型
``` ```
上面的例子中,打印的结果,都是字符串类型的数据。
### 方法二调用toString()方法 ### 方法二调用toString()方法
@ -49,7 +52,7 @@
### 方法三**调用String()函数。 ### 方法三使用String()函数
格式如下: 格式如下:
@ -66,11 +69,14 @@ String(变量)
### prompt():用户的输入 ### prompt():用户的输入
我们在上面的内容里讲过,`prompt()`就是专门用来弹出能够让用户输入的对话框。重要的是:用户不管输入什么,都是字符串。 我们在JS基础的第一篇里讲过,`prompt()`就是专门用来弹出能够让用户输入的对话框。重要的是:用户不管输入什么,都是字符串。
## Number()函数:其他的数据类型 --> Number ## 其他的数据类型 --> Number
情况一:字符串 --> 数字
### 方式一使用Number()函数
**情况一:字符串 --> 数字**
- 1.如果字符串中是纯数字,则直接将其转换为数字。 - 1.如果字符串中是纯数字,则直接将其转换为数字。
@ -78,25 +84,25 @@ String(变量)
- 3.如果字符串是一个空串或者是一个全是空格的字符串则转换为0。 - 3.如果字符串是一个空串或者是一个全是空格的字符串则转换为0。
情况二:布尔 --> 数字 **情况二:布尔 --> 数字**
- true 转成 1 - true 转成 1
- false 转成 0 - false 转成 0
情况三null --> 数字 **情况三null --> 数字**
- 结果为0 - 结果为0
情况四undefined --> 数字 **情况四undefined --> 数字**
- 结果为NaN - 结果为NaN
### `parseInt()`:字符串 --> 整数【重要】 ### 方式二:`parseInt()`:字符串 -> 整数【重要】
> `parseInt()`是专门用来对付字符串的。 > `parseInt()`是专门用来对付字符串的。
**parseInt()的作用是将字符串转为数字**。parse表示“转换”Int表示“整数”注意`Int`的拼写)。例如: **parseInt()的作用是将字符串中的有效的整数内容转为数字**。parse表示“转换”Int表示“整数”注意`Int`的拼写)。例如:
``` ```
parseInt("5"); parseInt("5");
@ -152,11 +158,14 @@ String(变量)
var a = true; var a = true;
console.log(parseInt(a)); //打印结果NaN 因为是先将a转为字符串"true",然后然后再操作) console.log(parseInt(a)); //打印结果NaN 因为是先将a转为字符串"true",然后然后再操作)
var b = undefined; var b = null;
console.log(parseInt(b)); //打印结果NaN 因为是先将b转为字符串"undefined",然后然后再操作) console.log(parseInt(b)); //打印结果NaN 因为是先将b转为字符串"null",然后然后再操作)
var c = 168.23; var c = undefined;
console.log(parseInt(c)); //打印结果168 因为是先将c转为字符串"168.23",然后然后再操作) console.log(parseInt(c)); //打印结果NaN 因为是先将b转为字符串"undefined",然后然后再操作)
var d = 168.23;
console.log(parseInt(d)); //打印结果168 因为是先将c转为字符串"168.23",然后然后再操作)
``` ```
@ -166,11 +175,25 @@ String(变量)
> `parseFloat()`是专门用来对付字符串的。 > `parseFloat()`是专门用来对付字符串的。
道理同上。
parseFloat()的作用是:将字符串转换为**浮点数**。
parseFloat()和parseInt()的作用类似不同的是parseFloat()可以获得有效的小数部分。
代码举例:
```javascript
var a = '123.456.789px';
console.log(parseFloat(a)); // 打印结果123.456
```
## 转换为Boolean ## 转换为Boolean
> 将其他的数据类型转换为Boolean可以使用Boolean()函数。 将其他的数据类型转换为Boolean可以使用**Boolean()**函数。
- 情况一:数字 --> 布尔。除了0和NaN其余的都是true。 - 情况一:数字 --> 布尔。除了0和NaN其余的都是true。
@ -180,6 +203,8 @@ String(变量)
- 情况四对象也会转换为true。 - 情况四对象也会转换为true。
PS上面的这就种情况很重要开发中会经常用到。
## 其他进制的数字 ## 其他进制的数字
- 16进制的数字以`0x`开头 - 16进制的数字以`0x`开头