今天在看面試題的時候偶然看到~function()這樣的函式,卻不知道什麼意思,檢視了網上的介紹,發現了其實是自呼叫的意思。
~
function()
();//相當於
(function()
)();
根據我個人的理解,意思就是一元運算子可以運算後面的表示式。而後面的表示式是乙個函式的自呼叫的情況。那麼,這一次的運算將把後面的表示式的運算一遍。就好像小時候學習數學一樣,!在數學裡是階乘的意思,那麼
!(1+2+3)是不是需要把1+2+3的結果求出來結果再操作呢?
當然,其他的一元操作符也可以有相同的效果,
!
function()
();~
function()
();+
function()
();-
function()
();(
function()
)();
題外話:
我發現有的程式設計師是不習慣寫分號結尾的,那麼你要在寫function開頭的時候 要寫;function(){};
一元運算子
一元運算子,只需要乙個運算元 對於非number型別的值,它會將先轉換為number,然後在運算 可以對乙個其他的資料型別使用 來將其轉換為number 它的原理和number 函式一樣 var a 3 var a 3 console.log typeof a 輸出number var a 10 a...
過載一元運算子
過載一元運算子 不像你所看到的到目前為止經營者,陽性 負 和邏輯非 經營者都是一元運算子,這意味著他們只能執行在乙個運算元。因為這些運營商沒有改變他們的運算元,我們將實施他們作為朋友函式。所有三個運算元都是以相同的方式實現。讓我們看看我們如何操作在仙班我們先前的例子實現 class cents ov...
ECMAScript 一元運算子
哎呀呀 最近突然想閒一閑 追追劇,想著考研的事,想把前端擱一擱,唉 衝動,全是衝動啊!var o new object o.name delete o.name 物件便變成underfined了 void運算子對任何值返回underfined 沒有返回值得函式真正返回的都是underfined cl...