摘要:中的數(shù)字也是按照的標(biāo)準(zhǔn)存儲(chǔ)的,按位存儲(chǔ),但是操作符不會(huì)直接去操作位,會(huì)將位數(shù)轉(zhuǎn)換成位整數(shù)操作,完成運(yùn)算后再轉(zhuǎn)換成位,這個(gè)位對(duì)用戶來(lái)說(shuō)是透明的。雖然經(jīng)常寫(xiě),但是還是對(duì)一些按位運(yùn)算比較迷茫。
javascript中的數(shù)字也是按照IEEE754的標(biāo)準(zhǔn)存儲(chǔ)的,按64位存儲(chǔ),但是操作符不會(huì)直接去操作64位,會(huì)將64位數(shù)轉(zhuǎn)換成32位整數(shù)操作,完成運(yùn)算后再轉(zhuǎn)換成64位,這個(gè)64位對(duì)用戶來(lái)說(shuō)是透明的。
雖然經(jīng)常寫(xiě)js,但是還是對(duì)一些按位運(yùn)算比較迷茫。對(duì)于32位有符號(hào)整數(shù),最高位為符號(hào),正數(shù)最高位0,負(fù)數(shù)最高位1,負(fù)數(shù)按二進(jìn)制補(bǔ)碼存儲(chǔ)。NaN和Inifinity在位操作中都被當(dāng)成0對(duì)待
0000 0000 0000 0000 0000 0000 0000 1010 => 1111 1111 1111 1111 1111 1111 1111 0101 (負(fù)數(shù)) => -0000 0000 0000 0000 0000 0000 0000 1011
對(duì)x取反相當(dāng)于<=>-x-1
按位與&按照1&1為1,其它都為0
按位或|按照0|0為0,其它都為1
按位亦或^按照0^0為1,1^1為1,其它都為0
左移<<右邊的空位用0補(bǔ)齊
右移>>左邊的空位正數(shù)用0補(bǔ)齊,負(fù)數(shù)用1補(bǔ)齊
無(wú)符號(hào)右移>>>左邊的空位用0補(bǔ)齊
typeoftypeof用來(lái)判斷一個(gè)變量的類型。
typeof null => "object" typeof number => "number" typeof object => "object" typeof function => "function" typeof array => "object" typeof 正則表達(dá)式 => 老版本safari和chrome返回"function",其它情況返回"object"
注意:
console.log(a) // a未定義會(huì)報(bào)錯(cuò) typeof a // a未定義,返回undefined
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/90780.html
摘要:相信大家都知道二進(jìn)制數(shù)按位運(yùn)算的規(guī)則來(lái)看一些簡(jiǎn)單的例子單純的二進(jìn)制位之間的這些運(yùn)算相當(dāng)簡(jiǎn)單,但對(duì)我們實(shí)際編程并沒(méi)有直接幫助,因?yàn)榫幊踢^(guò)程中需要的經(jīng)常是數(shù)字間的運(yùn)算,比如。 先來(lái)看LeetCode上的Divide Two Integers題目要求: Divide two integers without using multiplication, division and mod ope...
摘要:檢查設(shè)定位操作符還有一些其他有用的位屏蔽應(yīng)用。請(qǐng)注意,位掩碼中的位將有效地關(guān)閉十進(jìn)制數(shù)中的相應(yīng)位,因?yàn)椤? 原文標(biāo)題:Interesting use cases for JavaScript bitwise operators原文地址:https://blog.logrocket.com/in... 本文首發(fā)于公眾號(hào):符合預(yù)期的CoyPan JavaScript提供了幾種運(yùn)算符,可以對(duì)...
摘要:例如,十進(jìn)制數(shù),用二進(jìn)制表示則為。按位操作符操作數(shù)字的二進(jìn)制形式,但是返回值依然是標(biāo)準(zhǔn)的數(shù)值。不同為真相同為假二進(jìn)制按位異或運(yùn)算從左到右按位非為真,為假對(duì)每一項(xiàng)進(jìn)行非操作,遇真則假,遇假則真。 二進(jìn)制與十六進(jìn)制 二進(jìn)制用 0 1 表示 2= 10十六進(jìn)制 前綴0x 用0123456789ABCDEF表示 2= 0x2二進(jìn)制與十六進(jìn)制的轉(zhuǎn)換十六進(jìn)制的每位 等于二進(jìn)制的四位 十六進(jìn)制 0x...
摘要:一基礎(chǔ)數(shù)據(jù)類型原始類型復(fù)合類型由其他原始類型組合起來(lái)的類型運(yùn)算符和表達(dá)式算術(shù)運(yùn)算符加減乘除取模冪地板除的除位運(yùn)算符二進(jìn)制之間的運(yùn)算轉(zhuǎn)換成二進(jìn)制數(shù)將二進(jìn)制轉(zhuǎn)換成十進(jìn)制按位與都為才為按位或存在即為按位異或相同的為不同的為按位取反正數(shù)的補(bǔ)碼,反 一.python基礎(chǔ): 數(shù)據(jù)類型: 原始類型: int float byte 復(fù)合類型: 由其他原始類型組合...
摘要:位運(yùn)算符位運(yùn)算符與邏輯運(yùn)算符類似,但是位運(yùn)算符是對(duì)每一位進(jìn)行計(jì)算。上面說(shuō)到的按位取反加,就可以寫(xiě)成移位運(yùn)算符右移與無(wú)符號(hào)右移相似,是將整數(shù)所有的位向右移動(dòng)位,拋棄個(gè)低位。空出來(lái)的低位用的最高位值補(bǔ)全。 定點(diǎn)數(shù)據(jù)再計(jì)算機(jī)中的表示方法 例如一個(gè)整數(shù)類型(int)的數(shù)據(jù)在內(nèi)存中占用了32位。通俗的講就是在內(nèi)存中挖了32個(gè)坑,每一個(gè)坑里可以放一個(gè)0或者1. 00000000 11111111 ...
閱讀 1882·2021-11-11 16:55
閱讀 2064·2021-10-08 10:13
閱讀 739·2019-08-30 11:01
閱讀 2155·2019-08-29 13:19
閱讀 3277·2019-08-28 18:18
閱讀 2620·2019-08-26 13:26
閱讀 579·2019-08-26 11:40
閱讀 1864·2019-08-23 17:17