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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

js 操作符問(wèn)題`~~`

js 操作符問(wèn)題`~~`

鴻蒙傳說(shuō) 2018-09-06 14:38:08
今天剛看到j(luò)s歸并排序排序有一段知道作用和Math.floor()一樣,~是取反的意思,兩次取反還是什么的,之前在jQuery源碼里面還見(jiàn)到類(lèi)似 + function(){}、?function(){}、!function(){}.這樣的目的是什么,讓源碼看起來(lái)更加簡(jiǎn)單,效率更高還是怎么?求教?。?!function merge(left, right) {  var tmp = [];  while (left.length && right.length) {    if (left[0] < right[0])       tmp.push(left.shift());    else       tmp.push(right.shift());   }  return tmp.concat(left, right); } function mergeSort(a) {  if (a.length === 1)      return a;  var mid = ~~(a.length / 2) //------------------->"~~"     , left = a.slice(0, mid)     , right = a.slice(mid);  return merge(mergeSort(left), mergeSort(right)); }
查看完整描述

1 回答

?
小怪獸愛(ài)吃肉

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個(gè)贊

~是js里的位操作運(yùn)算符,意思是按位取反。就是把操作數(shù)轉(zhuǎn)換成二進(jìn)制把每一位視作布爾值進(jìn)行取非(not)操作

位運(yùn)算符在操作數(shù)是浮點(diǎn)數(shù)的情況下會(huì)向下去整,只保留整數(shù)部分。~~連用的話就是按位取反再取反,當(dāng)操作數(shù)是整數(shù)的情況是返回自己,是浮點(diǎn)的話就相當(dāng)于Math.floor的效果。

至于+function(){}!function(){}是因?yàn)閖s里function(){}可以被解析為函數(shù)聲明和函數(shù)表達(dá)式,而且是會(huì)優(yōu)先解析為函數(shù)聲明。使用+!是為了讓解釋器將function(){}解析為函數(shù)表達(dá)式。


查看完整回答
反對(duì) 回復(fù) 2018-10-16
  • 1 回答
  • 0 關(guān)注
  • 615 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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