第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JavaScript中的“雙傾斜”(~)操作符是什么?

JavaScript中的“雙傾斜”(~)操作符是什么?

12345678_0001 2019-07-09 16:39:30
JavaScript中的“雙傾斜”(~)操作符是什么?我在一些代碼中看到了這個,我不知道它能做什么:var jdn = function(y, m, d) {   var tmp = (m <= 2 ? -1 : 0);   return ~~((1461 * (y + 4800 + tmp)) / 4) +           ~~((367 * (m - 2 - 12 * tmp)) / 12) -           ~~((3 * ((y + 4900 + tmp) / 100)) / 4) +           d - 2483620;};是什么~~接線員會嗎?
查看完整描述

3 回答

?
慕姐8265434

TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個贊

那,那個~~是雙位運(yùn)算符,而不是位運(yùn)算符。

它被用作更快的替代Math.floor().


查看完整回答
反對 回復(fù) 2019-07-09
?
紫衣仙女

TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個贊

它隱藏了代碼的意圖。

它是兩個單一的傾斜運(yùn)算符,所以它做了兩次按位補(bǔ)足(按位不是)。操作相互分離,因此唯一剩下的效果是在應(yīng)用第一個運(yùn)算符之前完成的轉(zhuǎn)換,即將值轉(zhuǎn)換為整數(shù)。

有些人用它作為一種更快的替代方案。Math.floor但速度差異并沒有那么大,在大多數(shù)情況下,這只是微觀優(yōu)化而已。除非您有一段真正需要優(yōu)化的代碼,否則您應(yīng)該使用代碼來消除它所做的事情,而不是使用非操作的副作用。

隨著瀏覽器中JavaScript引擎的優(yōu)化,操作符和函數(shù)的性能發(fā)生了變化。在當(dāng)前瀏覽器中,使用~~而不是Math.floor在某些瀏覽器中速度有點(diǎn)快,而在某些瀏覽器中則一點(diǎn)也不快。如果您確實(shí)需要額外的性能,則需要為每個瀏覽器編寫不同的優(yōu)化代碼。

見:Tilde對地板


查看完整回答
反對 回復(fù) 2019-07-09
  • 3 回答
  • 0 關(guān)注
  • 450 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號