溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript強制類型轉換方法有哪些

發(fā)布時間:2021-07-19 00:43:03 來源:億速云 閱讀:230 作者:chen 欄目:web開發(fā)

這篇文章主要介紹“JavaScript強制類型轉換方法有哪些”,在日常操作中,相信很多人在JavaScript強制類型轉換方法有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”JavaScript強制類型轉換方法有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

三種強制類型轉換是:1、轉換為數(shù)值類型,Number()、parseInt()、parseFloat();2、轉換為字符串類型,toString()、String();3、轉換為布爾類型,Boolean()。

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

JavaScript是弱類型語言,它的值數(shù)據類型是可以變的。

有些語言要求指定每個變量的數(shù)據類型,這樣的語言叫強類型語言,如java C++

強制類型轉換

類型轉換有兩種:一種是顯式轉換,即需要程序員手動寫代碼轉換;另一種是隱匿轉換,由JavaScript解釋器轉換。

JavaScript提供以下函數(shù)進行顯式轉換:

1.轉換為數(shù)值類型:Number(mix)、parseInt(string,radix)、parseFloat(string)

2.轉換為字符串類型:toString(radix)、String(mix)

3.轉換為布爾類型:Boolean(mix)

轉換為數(shù)值類型

Number(mix)函數(shù)

Number(mix)函數(shù),可以將任意類型的參數(shù)mix轉換為數(shù)值類型。其規(guī)則為:

1、如果是布爾值,true和false分別被轉換為1和0

2、如果是數(shù)字值,返回本身。

3、如果是null,返回0

4、如果是undefined,返回NaN。

5、如果是字符串,遵循以下規(guī)則:

a.如果字符串中只包含數(shù)字,則將其轉換為十進制(忽略前導0)

b.如果字符串中包含有效的浮點格式,將其轉換為浮點數(shù)值(忽略前導0)

c.如果是空字符串,將其轉換為0

d.如果字符串中包含非以上格式,則將其轉換為NaN

6、如果是對象,則調用對象的valueOf()方法,然后依據前面的規(guī)則轉換返回的值。如果轉換的結果是NaN,則調用對象的toString()方法,再次依照前面的規(guī)則轉換返回的字符串值。

示例

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>數(shù)據類型轉換</title>
</head>
<body>
<script>

    println(Number(false));
    println(Number(true));
    println(Number(123));
    println(Number(null));
    println(Number(undefined));
    println(Number(person));


    function println(a){
        document.write(a+'<br>');
    }

    var person={};//字面量創(chuàng)建對象

    // 設置字面量對象屬性
    person.name='huangshiren';
    person.age=58;
    person.appetite=3;
    person.eat=function(){
        document.write('正在吃飯');
    }
</script>
</body>
</html>

parseInt(string, radix)函數(shù)

參數(shù)說明:

string 要被解析的值。如果參數(shù)不是一個字符串,則將其轉換為字符串(使用  ToString 抽象操作)。字符串開頭的空白符將會被忽略。

radix 一個介于2和36之間的整數(shù)(數(shù)學系統(tǒng)的基礎),表示上述字符串的基數(shù)。比如參數(shù)"10"表示使用我們通常使用的十進制數(shù)值系統(tǒng)。始終指定此參數(shù)可以消除閱讀該代碼時的困惑并且保證轉換結果可預測。當未指定基數(shù)時,不同的實現(xiàn)會產生不同的結果,通常將值默認為10。

parseInt(string, radix)函數(shù),將字符串轉換為整數(shù)類型的數(shù)值。它也有一定的規(guī)則:

1.忽略字符串前面的空格,直至找到第一個非空字符

2.如果第一個字符不是數(shù)字符號或者負號,返回NaN

3.如果第一個字符是數(shù)字,則繼續(xù)解析直至字符串解析完畢或者遇到一個非數(shù)字符號為止

4.如果上步解析的結果以0開頭,則將其當作八進制來解析;如果以x開頭,則將其當作十六進制來解析

5.如果指定radix參數(shù),則以radix為基數(shù)進行解析

示例

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>數(shù)據類型轉換</title>
</head>
<body>
<script>

    println(parseInt("12.34567",10));
    println(parseInt("de",10));
    println(parseInt("0123456789",10));
    println(parseInt("0e0",16));
    println(parseInt("0101010001",2));

    function println(a){
        document.write(a+'<br>');
    }


</script>
</body>
</html>

parseFloat(string)函數(shù)

parseFloat(string)函數(shù),將字符串轉換為浮點數(shù)類型的數(shù)值。

它的規(guī)則與parseInt基本相同,但也有點區(qū)別:字符串中第一個小數(shù)點符號是有效的,另外parseFloat會忽略所有前導0,如果字符串包含一個可解析為整數(shù)的數(shù),則返回整數(shù)值而不是浮點數(shù)值。

示例

 <!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>數(shù)據類型轉換</title>
</head>
<body>
<script>

    println(parseFloat("3.14"));
    println(parseFloat("314e-2"));
    println(parseFloat("0.0314E+2"));
    println(parseFloat("3.14more non-digit characters"));

    function println(a){
        document.write(a+'<br>');
    }


</script>
</body>
</html>

轉換為字符串類型

toString(radix)方法。除undefined和null之外的所有類型的值都具有toString()方法,其作用是返回對象的字符串表示。

示例

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>數(shù)據類型轉換</title>
</head>
<body>
<script>

    var count=10;
    println(count.toString());

    var boolean=true;
    println(boolean.toString());

    var today=new Date();
    println(today.toString());

    var shoppingCart=['鞋','連衣裙','皮帶'];
    println(shoppingCart.toString());


    var person={};//字面量創(chuàng)建對象

    // 設置字面量對象屬性
    person.name='huangshiren';
    person.age=58;
    person.appetite=3;
    person.eat=function(){
        document.write('正在吃飯');
    }

    println(person.toString());


    function println(a){
        document.write(a+'<br>');
    }


</script>
</body>
</html>

轉換為布爾類型

Boolean(mix)函數(shù),將任何類型的值轉換為布爾值。

示例

 <!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>數(shù)據類型轉換</title>
</head>
<body>
<script>

    var count=10;

    println(Boolean(count));
    println(Boolean(0));
    println(Boolean(4<3));
    println(Boolean(null));
    println(Boolean(""));
    println(Boolean(undefined));

    var shoppingCart=['鞋','連衣裙','皮帶'];
    println(Boolean(shoppingCart));



    var person={};//字面量創(chuàng)建對象

    // 設置字面量對象屬性
    person.name='huangshiren';
    person.age=58;
    person.appetite=3;
    person.eat=function(){
        document.write('正在吃飯');
    }

    println(Boolean(person));

    function println(a){
        document.write(a+'<br>');
    }


</script>
</body>
</html>

到此,關于“JavaScript強制類型轉換方法有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI