javascript中的indexOf与if判断的优雅写法
文章同步发布:https://blog.jijian.link/2020-03-23/js-index-of/
常规indexOf与if判断写法:
1 if("112233".indexOf("22")>-1) { 2 console.log("找到二货"); 3 }else { 4 console.log("嗯,没找到二货"); 5 }
以上代码是否是你平时在写js逻辑时最常用写法。
运用位预算符取反,其实还有简洁的写法,如下:
1 if(~"112233".indexOf("22")) { 2 console.log("找到二货"); 3 }else { 4 console.log("嗯,没找到二货"); 5 }
原理:-1取反为0,0在if判断里面为false。
以上代码在团队合作中不建议使用,毕竟代码是大家一起维护,这种遇到新手,不一定能一眼看懂。
代码是给人读的,机器读的代码交给 uglify 。不过个人项目使用下毫无问题的。