试题:JavaScript隐式类型转换

tech2022-11-02  140

var str = false + 1 document.write(str)// 1 var demo = false == 1; document.write(demo)// false if(typeof(a)&&-true + (+undefined) + ""){ document.write('基础扎实') }// typeof(a) a未经声明,只有typeof不会报错,这里结果为undefined,因此&&符号前面结果为 "undefined" // 凡是前面有加减乘除符号的,一律先转换为数字,后进行运算,-true值为 -1;+undefined为NaN // -1 + NaN 结果为 NaN,最后加上一个空字符串,结果就为 "NaN" // &&两边都为字符串,即两边都为true ,因此下方结果必然执行 if(11 + "11" * 2 ==33){ document.write("基础扎实") }//先乘除, 先将字符串11转换为数字,再计算,就是11*2 结果为true //==转换类型后等于可以以 // ===必须类型一模一样才可以
最新回复(0)