js中基本数据类型包括:布尔类型、数据类型、字符串类型、undefined、null,这些基本满足了我们在开发中的需求,但在实际执行过程中有时
需要变量中存储的数据是某种特定的数据类型,这时就要进行数据的转化,将当前的数据转化至其他数据类型。
数据转化类型有自动转化,为程序自动进行!
自动转化:其他类型转化为布尔类型,在执行if判断时,程序会自动转化为布尔类型,原则为:除去“0” “”空字符串 undefined null NaN这五个会转为false,
其余均会转为true。
其他类型转化字符串,在执行字符串拼接时会将其他数据转化为字符串类型,当“+”号两侧有其他类型,会自动转化字符串类型。原则为:布尔true、false
转化为“true” “false”,undefined-“undefined”,null-“null”,数值-转化为对应的纯数字字符串,其中有引用数据类型的转化:1.数组-会将[ ]中的内容转化为
字符串形式进行拼接;2.对象-任何对象内容,都会转为[object Object]的固定形式;3.函数-所有的程序代码,都会转为字符串。
其他类型转化为数值,在执行数学运算时,会触发数据类型的自动转化,转化原则:布尔类型“true”转化为1,“false”转为0,“undefined”转化为NaN,“null”
转化为0,字符串当为纯字符串或符合科学计数法会转化为对应的数值;如果字符串不符合数字规范的内容,就转化为NaN。数组、对象、函数为“+”号运算
时执行的是字符串拼接效果,与字符串类型转化原则一样,非“+”号其他形式的运算,执行的结果都是NaN。
原文:https://www.cnblogs.com/zhanglei154636/p/12493927.html