算数运算符和比较运算符中会隐式转换为数字类型(相当于调用Number())
纯数字字符串直接转换为对应数字(或只有一个值的数组,进行Number()转换的时候会视为第一个值的字符串)
+‘123‘ // 123
+[‘123‘] // 123
转换为1:true, [1],[‘1‘]
转换为0:false、null、‘’空字符串、‘ ’空白字符串、[]、[‘‘空字符串]、[空白字符串]
Infinity转换为Infinity
逻辑运算中,或者将数据作为条件分支语句(if / while / do while)的判断条件时
逻辑运算的时候会先进行条件判断然后返回的是原值
转换为false:NaN、0、‘’空字符串、null、undefined
转换为true:非0、非NaN、非空字符串、数组与对象
原文:https://www.cnblogs.com/lezaizhu/p/14089416.html