为了账号安全,请及时绑定邮箱和手机立即绑定

函数判断语句问题

函数里的判断语句为什么不写成  if(className.indexOf('imooc')!=-1) 而是写成(-1!= = className.indexOf('imooc'))?有什么区别或者好处吗

正在回答

2 回答

!= 在表达式两边的数据类型不一致时,转换为相同数据类型,然后对值进行比较;
!== 不会进行类型转换,在比较时除了对值进行比较以外,还比较两边的数据类型;

至于为什么不反着来写,我猜是因为了有更好的可阅读性,还有就是习惯问题

1 回复 有任何疑惑可以回复我~

indexOf()返回的值是整形值,-1也是整形,所以用!=判断不影响结果。这两个用法也不分哪个更好。
==仅判断值是否相等,!=是其非运算。
===是判断值和类型是否都相等,!==是其非运算。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

函数判断语句问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信