JavaScript函數前面加!、+、-、~, ;符號的意義介紹


本篇文章給大家帶來的內容是關於JavaScript函數前面加!、+、-、~, ;符號的意義介紹,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

! 對返回值的真假取反

console.log(!function() {

       return;

   }()); // true undefined屬於false,

console.log(!function() {

       return "a";

   }()); // false 字符串a屬於真

+、- 是對返回值進行數學運算

console.log(+function() {

    return 5.1;

}()); // 5.1 

console.log(-function() {

    return 5.1;

}()); // -5.1

~ 對返回值進行按位取反

(所有正整數的按位取反是其本身+1的負數,所有負整數的按位取反是其本身+1的絕對值,零的按位取反是 -1)

console.log(~function() {

    return 5;

}()); // -6 

console.log(~function() {

    return -5;

}()); // 4 

console.log(~function() {

    return 0;

}()); // -1

console.log(~function() {

    return "5";

}()); // -6 按位取反也會對返回值進行強制轉換,將字符串5轉化為數字5,然后再按位取反

; 是為了防止代碼壓縮時,前面代碼沒寫 ; 造成報錯。


這里還有人可能會問,為什么在自執行函數中,前面也有加一個符號如~

~function(){
    console.log('111')
}()
//"111" 

這里函數被認為運算符,會自行調用。
一般用於沒有return的函數中。
如果有return並希望正常返回值,建議還是按照正常自執行函數來進行編寫。

(function(){
    return '111'
})()
//"111" 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM