在JavaScript程序中,变量中存储的数据类型没有限制
也就是在变量照片那个可以存储任何复合JavaScript语法规范的数据类型
但是在JavaScript程序中,往往需要变量中存储的数值是某种特定的数据类型,此刻就需要数据类型的转化
所谓的数据转化,就是将当前数据类型转化成其他数据类型
JavaScript中数据类型的转化,分为自动转化和强制转化
自动转化是计算机程序,自动完成的转化,自动转化不是任何时候都会发生的,只有特殊情况下才会自动转化,自动转化原则至关重要
强制转化是程序员,强行完成的转化
自动转化
1.布尔类型的自动转化
其他数据类型,自动转化为布尔类型
在执行if判断时,其他数据类型自动转化为布尔类型
if只接受你输入true和false两个数值,if后面的判断写什么都行,最终if都会给他变成true和false
其他类型转化为布尔的原则
转化为false:0 ‘’(空字符串) undefined null NaN //0.0 0.0000都是0
除此之外其他所有的数据内容都会转化为true
2.字符串的自动转化
其他类型自动转化为字符串
再执行字符串拼接时,会将其他数据类型转化为字符串类型
执行字符串拼接时,加号两边应该都是字符串类型,如果是其他类型,JavaScript会自动转化成字符串类型,布尔值true—字符串‘true’,数值解析成对应的纯数字字符串(科学计数法,对解析成对应的数值进行拼接)
三个特殊的转化:
数组的拼接:不要[],将数组的数据内容转化为字符串执行拼接操作
对象的拼接(任何对象任何内容都会转化成[object,Object])
函数的拼接:把整个函数都变成字符串
3.数值的自动转化
其他类型转化成数值:在执行数学运算时,会触发数据类型的自动转化
布尔类型:true—1;false—0;
undefined—转化为NaN,NaN参与运算结果还是NaN
null—转化为0
字符串—如果整个字符串是纯数字字符串和科学计数法转化为对应的数值
如果字符串内有不符合数字规范的内容转化为NaN
数组,对象,函数:如果是加号,执行的是字符串拼接效果
如果是其他形式的运算,执行的结果都是NaN
JavaScript数据类型的自动转化
最新推荐文章于 2022-11-23 18:21:49 发布