js为弱类型编程语言:
1. 声明变量时,不用规定变量存储的数据类型
2. 赋值时,动态决定变量的数据类型
同一个变量,先后可保存不同类型的数据
3. 运算时,js会根据需要,动态转换数据的类型
1. 隐式转换:无需程序员干预,js自动完成的类型转换
算数计算中,一切类型都隐式转为number类型,再计算
特例:+运算中,只要有一方是字符串,两数据都转为字符串,且+运算变为字符串拼接!
2. 强制转换:程序员通过主动调用专门函数,执行转换
(1)任意类型 to String
a.var str=x.toString(); js中,一切数据都有toString()方法
b.var str=String(x); --->>隐式转换
(2)任意类型 to Number
a.任意类型 to Number
var n=Number(x); --->>隐式转换
b.String to Number
i.var n=parseInt(str);
从str开始位置逐个读取每个字符直到碰到第一个不是数字的字符为止,自动忽略开头碰到的空格
ii.var n=parseFloat(str);
原理同parseInt(),但是parseFloat()只认第一个小数点
(3)任意类型 to Boolean
var bool=Boolean(x);-->隐式转换
注意:只有 ""(空值)、NaN、undefined、null、0--->为false...其余都为true
时间: 2024-10-18 08:50:06