Javascript筆記(基礎轉載)

此文章爲轉載,連接忘記了,轉載一下以備之後看看,是否徹底正確還沒有知 編碼

1.delete 刪除之前定義的對象屬性或方法引用 對象

2.void 運算符對任何值都返回undefined 字符串

3. ++ – 字符串處理

4.一元加法(+) 特殊做用:能夠將字符串轉換成數字,它計算字符串的方式與parseInt()類似,主要不一樣是隻有對以"0x"開頭的字符串,才把它轉換成十進制的值,所以 +"010" == 10;+"0xB" == 11; it

5.一元減法(-) 與加法類似 字符編碼

6.NOT(~) 引用

處理過程: 二進制

(1)把運算數字轉換成32位數字 方法

(2)把二進制形式轉換成它的二進制反碼 移動

(3)把二進制反碼轉換成浮點數

NOT實質是對數字求負而後減1

7.AND(&)

8.OR(|)

9.XOR(^) 當只有一個數位存放的是1時,它才返回1

egg:

———————————————-

第一個數字第二個數字結果

1     1    0

1     0   1

0     1   1

0     0   0

———————————————-

10.左移運算(<<)

11.右移運算(>>)

12.無符號右移(>>>)

對於正數而言與>>無區別,可是對於負數來說,負數會被轉換成正數處理,可是因爲符號位的移動,總會獲得一個很大的數字

13.Boolean運算符

1.邏輯Not

——————————-

運算數       結果      

對象         false

數字0        true

數字0之外    false

null         true

NaN          true

undefined    發生錯誤

——————————-

2.邏輯And

———————————————-

運算數                    結果

對象 && Boolean值       對象

兩個都是對象            第二個對象

某個是null              null

某個是NaN               NaN

某個是undefined         錯誤

———————————————-

3.邏輯Or

———————————————-

運算數                    結果

對象 && Boolean值       對象

兩個都是對象            第一個對象

某個是null              null

某個是NaN               NaN

某個是undefined         錯誤

———————————————-

14.乘性運算符

1.乘法運算符

———————————————-

   運算數                    結果

某個是NaN                    NaN

Infinity乘以0                NaN

Infinity乘以0之外的數字    +-Infinity

Infinity乘以Infinity        Infinity

———————————————-

2.除法運算符

———————————————-

   運算數                        結果

某個是NaN                    NaN

Infinity被Infinity除         NaN

Infinity被任何數除           Infinity

0除一個非無窮大的數          NaN

Infinity被0之外的任何數除    +-Infinity

———————————————-

15.加性運算符

常規:

———————————————-

   運算數                        結果

   某個是NaN                   NaN

   Infinity加上Infinity        Infinity

   -Infinity加上-Infinity      -Infinity

   Infinity加上-Infinity        NaN

   +0加上+0                     +0

   -0加上+0                     +0

   -0加上-0                     -0

———————————————-

字符串處理:

———————————————-

   運算數                        結果

   都是String                第二個字符串鏈接到第一個

   只有一個String            轉換另外一個字符串拼接

   對象、數值、布爾值        調用toString()

   null、undefined           調用String()

———————————————-

16.減法

———————————————-

   運算數                     結果

   某個是NaN                  NaN

   Infinity減Infinity         NaN

   -Infinity減-Infinity       NaN

   Infinity減-Infinity        Infinity

   +0減+0                     +0

   +0減-0                     -0

   -0減-0                     +0

一個數是字符串、布爾值、null、undefined則執行Number()轉換後進行計算

若是一個操做數是對象,則先調用對象的valueOf(),若是爲NaN則爲NaN,若是valueOf方法不存在,那麼調用toString()後再進行轉換

———————————————-

   17.關係運算

———————————————-

若是兩個都是數字,執行數字比較

若是兩個都是字符串,比較字符編碼

若是一個是數字,另外一個是字符串,則字符串轉換爲數字進行比較

若是一個操數是對象,則調用這個對象的valueOf方法,若是沒有則調用toString方法進行轉換。

若是一個操做數是布爾值,則先將其轉換爲數字後進行比較。

任何操做數與NaN比較都返回false

———————————————-

18.相等操做符

兩個操做數不是同一個類型的狀況下的處理:

———————————————-

若是一個操做數是布爾值,則在比較的時候轉換成數值(false:0,true:1)

若是一個操做數是字符串,另外一個操做數是數字,則將字符串轉換成數字

若是一個操做數是對象,另外一個不是,則調用對象的valueOf()方法,用獲得的基本類型值按照前面的規則進行比較

這兩個操做符進行比較時則要遵循下列規則

1) null和undefined是相等的

2) 要比較相等性以前,不能將null和undefined轉換成其餘任何值

3) 若是一個操做數是NaN,則相等操做返回false,而不相等返回true。更重要的是NaN與NaN也不相等

4) 若是兩個操做數都是對象,則比較他們是否是同一個對象。若是兩個操做數指向的是同一個對象則返回true,不然返回false

undefined != 0 (Number(undefined) 爲NaN)

———————————————-

19.全等和不全等

———————————————-

只在兩個操做數不通過轉換就相等的狀況下返回true

———————————————-

20.條件操做符

var max = a > b ? a : b;

21.賦值操做符

var max = 1;

22.逗號操做符

var num1 = 1,num2 =2;

var num = (5,1,3,0);//結果爲0

相關文章
相關標籤/搜索