javascript四則運算

首先,我們來看這個例子:

例1:

1var i = 1;
2var j = "1";
3console.log(i+j);

   這個打印的結果是多少呢?我們來看,i是數字,j是字符串,兩個相加,就字符串拼接,1旁邊拼個1,結果就是11。

   再來,我們換一下:

例2:

1var i = 1;
2var j = 1;
3var m = "1";
4console.log(i+j+m);

   這個結果是不是也是按照上面的算法,字符串拼接,然後結果是111呢?這當然也是字符串拼接,但結果卻不是111;i與j相加就是數字相加,不需要字符串來拼接了,所以結果是21。

例3:

1var i;
2var j;
3console.log(i-j);

   如上例子,當i與j兩個都是變量,並沒有定義類型時,我們該按照什麼來計算呢?還是它的結果是underfined?我們在webstrom上運行一下,看到打印的結果是NaN。爲什麼呢?這就是js的運算,它自動把轉化爲數據類型,但又沒有定義值,所以輸出NaN。

   我們來看一個更容易理解的例子:

例4:

1var i = true;
2var j = false;
3console.log(i-j);

   這個按照變量自動轉化成數據類型來計算,很容易得出結果是1。

例5:

1var i = null;
2var j = NaN;
3console.log(i-j);

   這個例子就更容易看出它的運算規則,最後算出的結果是NaN。

通過以上那些例子,我們總結出一些規則:

1.若變量中有一個是字符串的,則進行字符串拼接,如例1;

2.若是數字的,則進行四則運算,如例2;

3.若沒有字符串,也沒有數字,如例3、例4、例5,就會自動轉化爲數據類型,然後在進行計算!



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章