js 前加分号和感叹号的含义
;!function(){}(); ?;!有什么用?
從語法上來開。Javascript中分號表示語句結束,在開頭加上。可能是為了壓縮的時候和別的方法切割一下,表示一個新的語句開始。所以,假設在一個單獨的JS文件里。開頭的分號是沒有不論什么意義的,能夠刪掉。
嘆號是邏輯運算符,是“非”的意思,常見這樣的寫法 if(!true){}。而將運算符載入函數定義的前面,則是將函數看做一個總體。然后再調用這個函數。并對返回的結構進行邏輯運算。
說白了,此處就是構建了一個馬上運行函數,建議樓主知道意思就能夠。自己寫的時候,能夠使用更清晰的格式:
(function(){})();
這里補充一點:在函數聲明【 function (){} 】后面加【 () 】,意思是運行這個函數聲明。
有的叫法是“匿名自己主動運行函數”,更準確的表示應該為“馬上運行函數”。
?
但馬上運行函數,要作為表達式的一部分才行,不然js解釋器會報語法錯誤。一般。成為表達式的最easy理解方式是:在左右兩端加一個圓括號,像這樣【 (function (){}) 】。所以,馬上運行函數最常見的寫法是【 (function (){})() 】,這是一個語句,在前面和后面都能夠加【 ; 】。
?
事實上馬上運行函數還有N種寫法,比方【 (function (){}) 】也行。在函數聲明前加一元運算符也行:【 !function (){}() 】、【 ~function (){}() 】。
甚至。對一元運算符進行組合也能夠:【 !!!!function (){}() 】、【 ~~~function (){}()?】、【 !~!function (){}()?】。
轉載于:https://www.cnblogs.com/gccbuaa/p/7379676.html
總結
以上是生活随笔為你收集整理的js 前加分号和感叹号的含义的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: webbrowser载入地图网页出现脚本
- 下一篇: 一种爬虫架构分享