欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括:顯式類型轉(zhuǎn)換和隱式類型轉(zhuǎn)換。顯式類型轉(zhuǎn)換主要通過使用JavaScript內(nèi)置的函數(shù)來轉(zhuǎn)換;而隱式類型轉(zhuǎn)換是指JavaScript根據(jù)運(yùn)算環(huán)境自動(dòng)轉(zhuǎn)換值的類型。

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么

          本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括:顯式類型轉(zhuǎn)換和隱式類型轉(zhuǎn)換。

          顯式的轉(zhuǎn)換數(shù)據(jù)類型

          顯示的轉(zhuǎn)換數(shù)據(jù)類型主要通過JS定義的數(shù)據(jù)轉(zhuǎn)換方法。

          1、轉(zhuǎn)換成字符串

          多數(shù)的JavaScript宿主環(huán)境(比如Node.js和Chrome)都提供了全局函數(shù)toString; 與此同時(shí)Object.prototype也定義了toString方法,使得所有對(duì)象都擁有轉(zhuǎn)換為字符串的能力。

          比如一個(gè)Number轉(zhuǎn)換為String:

          var n = 1; n.toString();   // '1'

          toString接受一個(gè)參數(shù)指定進(jìn)制,默認(rèn)為10. 可以利用這個(gè)參數(shù)生成包括字母和數(shù)字的隨機(jī)字符串:

          Math.random().toString(36).substr(2);

          random生成一個(gè)0到1的隨機(jī)數(shù),36進(jìn)制的字符集為[0-9a-z](36個(gè)),substr用來截掉起始的"0."。 另外Object.prototype.toString可以用來檢測(cè)JavaScript對(duì)象的類型:

          var toString = Object.prototype.toString; toString.call(new Date); // [object Date] toString.call(new String); // [object String] toString.call(Math); // [object Math] // Since JavaScript 1.8.5 toString.call(undefined); // [object Undefined] toString.call(null); // [object Null] // 自定義類型 toString.call(new MyClass);   // [object Object]

          2、轉(zhuǎn)換為數(shù)字

          字符串轉(zhuǎn)換為數(shù)字也是常見需求,通常用來從用戶輸入或文件來獲得一個(gè)Number,在JavaScript中可以直接用parseInt和parseFloat。 例如:

          var iNum1 = parseInt("12345red");   //返回 12345 var iNum1 = parseInt("0xA");    //返回 10 var iNum1 = parseInt("56.9");   //返回 56 var iNum1 = parseInt("red");    //返回 NaN var fNum4 = parseFloat("11.22.33"); //返回 11.22

          注意NaN是JavaScript中唯一一個(gè)不等于自己的值。(NaN == NaN) === false! 如果遇到非法字符,parseInt和parseFloat會(huì)忽略之后的所有內(nèi)容。

          parseFloat只接受十進(jìn)制數(shù)字的字符串,而parseInt還提供了第二個(gè)參數(shù)(可選)用來指定字符串表示數(shù)字的進(jìn)制:

          var iNum1 = parseInt("10", 2);  //返回 2 var iNum2 = parseInt("10", 8);  //返回 8 var iNum3 = parseInt("10", 10); //返回 10

          3、強(qiáng)制類型轉(zhuǎn)換

          Boolean(0)                // => false - 零 Boolean(new object())   // => true - 對(duì)象 Number(undefined)       // =>   NaN Number(null)              // => 0 String(null)              // => "null"

          隱式的數(shù)據(jù)轉(zhuǎn)換

          通過 JavaScript 自身自動(dòng)轉(zhuǎn)換。JavaScript 能夠根據(jù)運(yùn)算環(huán)境自動(dòng)轉(zhuǎn)換值的類型,以滿足運(yùn)算需要。

          1、遞增和遞減操作符

          遞增和遞減操作符直接借鑒自C,而且各有兩個(gè)版本:前置型和后置型(a++ ,a– ,++a , –a)。顧名思義,前置型應(yīng)該位于要操作的變量之前,而后置型應(yīng)該位于要操作的變量之后。

          這4個(gè)操作符對(duì)任何值都適用,也就是他們不僅適用于整數(shù),還可以用于字符串、布爾值、浮點(diǎn)數(shù)值和對(duì)象,此時(shí)伴隨著隱式的數(shù)據(jù)類型轉(zhuǎn)換。

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么


          2、一元四則運(yùn)算

          加法運(yùn)算符+是雙目運(yùn)算符,只要其中一個(gè)是String類型,表達(dá)式的值便是一個(gè)String。

          對(duì)于其他的四則運(yùn)算,只有其中一個(gè)是Number類型,表達(dá)式的值便是一個(gè)Number。

          對(duì)于非法字符的情況通常會(huì)返回NaN:

          '1' * 'a'     // => NaN,這是因?yàn)閜arseInt(a)值為NaN,1 * NaN 還是 NaN

          3、邏輯非操作符 與 比較操作符 將任意值轉(zhuǎn)換為 布爾值

          邏輯非操作符首先會(huì)將他的操作數(shù)轉(zhuǎn)換為一個(gè)布爾值,然后再對(duì)其求反。

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么

          4、關(guān)系比較操作符

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么

          javascript數(shù)據(jù)類型轉(zhuǎn)換包括什么

          5、判斷語句

          判斷語句中的判斷條件需要是Boolean類型,所以條件表達(dá)式會(huì)被隱式轉(zhuǎn)換為Boolean。 其轉(zhuǎn)換規(guī)則同Boolean的構(gòu)造函數(shù)。比如:

          var obj = {}; if(obj){     while(obj); }

          6、Native代碼調(diào)用

          JavaScript宿主環(huán)境都會(huì)提供大量的對(duì)象,它們往往不少通過JavaScript來實(shí)現(xiàn)的。 JavaScript給這些函數(shù)傳入的參數(shù)也會(huì)進(jìn)行隱式轉(zhuǎn)換。例如BOM提供的alert方法接受String類型的參數(shù):

          alert({a: 1});    // => [object Object]

          【推薦學(xué)習(xí):javascript高級(jí)教程】

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)