!0這么寫有什么好處?會有性能上的區別嗎?還有例如這樣的!!0!1!-1,是不是比直接寫true和false少了好多字母?這樣省流量(lll¬ω¬)?
2 回答

繁星淼淼
TA貢獻1775條經驗 獲得超11個贊
!0=>不等于0=>true!=1or!=-1=>常用語indexOf的返回值判斷,或者其他number的判斷!!0=>等于0=>false更多的是考慮簡寫和優化代碼的時候使用,好比if(){}elseif(){}=>?:(人們常見的三目)還一點就是省流量,簡寫意味著減少代碼量,減少文件大小,意味的就是減少流量但是如果僅僅是一個*!0*是優化不了多少的流量的,具體前端優化可以查看前端優化相關的資料至于代碼運行的時長你可以使用console.time()//codeconsole.timeEnd();來跑跑的運行的時間

互換的青春
TA貢獻1797條經驗 獲得超6個贊
!1和!-1都是!x這種寫法的具體事例,對x做"非"運算.這就是一種布爾運算的基本寫法吧...,而1和-1的值都為真,所以!1和!-1就等價于false.代碼壓縮(uglifyjs)工具會利用這個技巧來達到減少代碼size的作用.但請注意,沒有人會在手寫的源碼里使用這種方式來替代false.!!x這種就寫法就比較通用了,很多知名項目里(vue)都存在這種寫法.作用是類型轉換,把x轉化為相應的布爾值.
添加回答
舉報
0/150
提交
取消