标题五、数据类型的转化
所谓的数据类型转化:就是将当前数据类型转化为其他数据类型
在JavaScript中数据类型的转换分为自动转换和强制转换;
自动转换:计算机程序执行的
Ⅰ:布尔类型的自动转换:
在if()中执行
false:在 0 、’’ 、undefined、null、NaN这五种情况下转化为false
true:其他所有数据都转化为true
if判断的基本语法:
if(表达式){
执行程序
}else{
执行程序
}
Ⅱ:字符串的自动转换
在执行 字符串拼接时,会将其他数据转化为字符串类型
执行字符串拼接, 拼接符号 + 号 两侧 应该都是 字符串类型
如果是其他类型 JavaScript程序,会自动转化为 字符串类型,再执行拼接
转化原则:
基本数据类型 直接转化为 字符串形式
// 布尔值 true —> 字符串 ‘true’
// 布尔值 false —> 字符串 ‘fasle’
// undefined —> 字符串 ‘undefined’
// unll —> 字符串 ‘null’
// 数值 —> 将数值解析转化为 对应的 纯数字的字符串
引用数据类型
// 数组 : 将 [] 内的数据,转化为字符串
// 对象 : 一律转化为 [object Object]
// 函数 : 将函数的所有内容,都转化为字符串
Ⅲ:数值的自动转换
* 在执行数学运算时 会触发数据类型的自动转换
转化原则:
布尔类型 : true—>1 false—>0
undefined : NaN
null : 0
字符串 :是纯数字的,会转化为对应的数值;
有不符合数值规范的,转化为NaN;
2. 强制转换:程序员人为执行的转换
Ⅰ:布尔类型的强制转换
Boolean( 数值/变量 )
转化原则:
false:在 0 、’’ 、undefined、null、NaN这五种情况下转化为false
true:其他所有数据都转化为true
Boolean()这个方法不会改变 变量中存储的原始数据
Ⅱ:字符串的强制转换
- String(变量/数据)
将变量或数据转化为字符串
原则按照自动转换的原则
不会改变变量中存储的原始数值
- 变量.toString(进制类型)
将数值,按照进制转化为对应的字符串输出
进制范围时2-36
Ⅲ:数值的强制转换
- Number(变量/数值)
原则与自动化原则相同
不会改变变量中存储的数值
- parseInt(变量/数值)
从数据的左侧起,获取数据的整数部分
布尔类型 undefined null 对象 函数 —> NaN
数组: 是获取数组中 第一个单元的 整数部分;
有整数部分,执行结果就是这个整数部分的内容;
没有整数部分,执行结果是 NaN
数值: 整数正常获取 浮点数获取小数点之前的部分
科学计数法: 获取 e字符串之前的整数部分
带有不符合数值规范的内容,获取从左侧起,符合整数规范的部分
-
parseFloat(数值/变量)
从数据的左侧起 获取数据的整数部分
布尔类型: undefined null 对象 函数 —> NaN
数组: 是获取数组中 第一个单元的 整数部分
有整数部分,执行结果就是这个整数部分的内容
没有整数部分,执行结果是 NaN
数值: 整数,浮点数都是正常获取
字符串: 整数,是正常获取
浮点数: 是正常获取浮点数部分
科学计数法: 会解析成浮点数来获取结果
带有不符合数值规范的内容,获取从左侧起,符合整数规范的部分