麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

Javascript必知必會(四)js類型轉換

2019-11-20 09:45:12
字體:
來源:轉載
供稿:網友

string和number boolean

javascript 類型會根據賦值的進行轉成相應的類型。

var str = "";alert(typeof (str));//stringstr = ;alert(typeof (str));//numbervar sum = str + ; //+編程兩個數字相加alert(sum);// 

   這一種比較明顯,一眼就可以計算出其值。但是請看下面這種轉換

var sum = "" + "";alert(typeof (sum)); //stringalert(sum);// var sum = "" + ;alert(typeof (sum)); //stringalert(sum);//          var sum = + "";     alert(typeof (sum));//string     alert(sum);var area = "" * "";alert(typeof (area)); //numberalert(area);//var sub = "" - "";alert(typeof (sub)); //numberalert(sub);//var div = "" / "";alert(typeof (div));//numberalert(div);//. 

  number 類型如果和string 類型"+", 將會直接number轉成string

上述中“+” 比較特殊,如果是- 、* 、/ 呢;那么最終會轉成什么類型呢。

var area = "" * "a";alert(typeof (area));//numberalert(area);//NaNvar sub = "a" - "";alert(typeof (sub));//numberalert(sub);//NaNsub = "a" - ;alert(typeof (sub));//numberalert(sub);//NaNvar div = "" / "a";alert(typeof (div));//numberalert(div);//NaNdiv = "a" / ;alert(typeof (div));//numberalert(div);//NaN 

  如上 - 、*、/ 是number 中算術具有的。string和number是不能進行運算的,所以其值都是NaN。類型number。

var a = true;alert(typeof(a));//booleanvar b = "true";var ab = a + b;alert(typeof (ab));//stringalert(ab); //truetruealert(a == b);//false 

   boolean 和 string ,boolean類型自動轉成了字符串“true”,但是為什么a不等于b呢

大家看下這個例子:

var c = "";alert(typeof(c));//stringvar d = ;alert(typeof (d));//numberalert(c == d);//true 

  這里給出了轉換的原則:(供參考)

1. 如果有一個操作數是布爾值,則在比較相等之前將其轉換為數值――――false轉換為0,true轉換為1;
2. 如果一個操作數是字符串,另一個操作符是數值,則在比較相等之前先講字符串轉換為數值;
3. 如果一個操作數是對象,另一個操作數不是,則調用對象的valueOf()方法,用得到的基本類型值按照前面的規則進行比較。

那么在比較字符串和布爾類型是就會:

發生這樣的轉換: Boolean true先轉成number 1,在轉成字符串“1” ,在進行比較。結果肯定是 false 了。

null 和string number Boolean undefined

var a = null;alert(typeof (a));//objectvar b = "hello";var ab = a + b;alert(typeof (ab));//stringalert(ab); //nullhellovar c = ;var ac = a * c;alert(typeof (ac)); //numberalert(ac);//if (a ) //false{} else{alert("false");}var u;alert(a == u); //true 

  從給出的例子可以看出:

null 在 string中 自動轉成字符串"null" , 在number中表示數字 0,在邏輯判斷中相當于false,在值表示時 和undefined 一樣。注意是== 而不是===。

雖然javascript 在進行比較時,== 轉換了其比較類型,但是其變量類型并沒有因為== 而發生改變。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美日性| 亚洲免费毛片基地 | 成人免费在线观看视频 | 色七七网站 | 免费啪啪 | 成年人网站国产 | 成年人黄色免费网站 | 国产成人在线观看网站 | 欧美日韩亚洲一区二区三区 | 亚洲精品 在线播放 | 亚洲一区二区免费 | 日韩视频在线观看免费视频 | 亚洲xxx视频 | 动漫孕妇被羞羞视频 | 成人一级黄色 | 久久精品网站视频 | 天堂亚洲一区 | 欧美性生活视频免费 | 精品在线观看一区二区 | 55夜色66夜色国产精品视频 | 高潮娇喘嗯啊~文字 | 国产精品久久久久av | 日本aaa一级片 | 91精品观看91久久久久久国产 | 女女久久 | 免费观看一区二区三区视频 | 国产精品成人久久 | 欧美精品激情视频 | 欧美成人视 | 久久精品片 | 黄色大片在线免费看 | 欧美女同hd | 最新中文字幕在线视频 | 一级爱爱 | 国产精品久久久久久久久久久久久久久 | 久久久www视频 | 中国美女一级黄色大片 | 国产午夜免费福利 | 黄色大片免费看 | 国产羞羞视频在线观看免费应用 | 男女一边摸一边做羞羞视频免费 |