!的优先级高于==,所以在判断时先执行!,!可将变量转换成boolean类型,null、undefined、NaN以及空字符串('')取反都为true,其余都为false。
所以==!这个就是把后面那个东西变成boolean类型才和前面进行==比较;
然后!==就是不等于而已;
例! [] 运算后的结果就是 false,所以[]==![]结果为true(进行==比较时一边为布尔会把另一边也变成布尔类型[]即为false,所以相等)
!的优先级高于==,所以在判断时先执行!,!可将变量转换成boolean类型,null、undefined、NaN以及空字符串('')取反都为true,其余都为false。
所以==!这个就是把后面那个东西变成boolean类型才和前面进行==比较;
然后!==就是不等于而已;
例! [] 运算后的结果就是 false,所以[]==![]结果为true(进行==比较时一边为布尔会把另一边也变成布尔类型[]即为false,所以相等)