小編給大家分享一下JavaScript中的數(shù)據(jù)類型轉換是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
業(yè)務包括:企業(yè)網(wǎng)站建設、手機網(wǎng)站制作設計、電子商務商城網(wǎng)站建設、網(wǎng)站營銷推廣等服務,并且涵蓋域名與空間、虛擬空間、云服務器、等互聯(lián)網(wǎng)基礎服務;成都創(chuàng)新互聯(lián)公司聯(lián)建站以互聯(lián)網(wǎng)的創(chuàng)新理念,成熟完善的建站體系,開拓進取的精神,專業(yè)的解決方案和顧問咨詢服務,幫助客戶在互聯(lián)網(wǎng)時代提升形象、把握商機、實現(xiàn)價值,提高企業(yè)的核心競爭力。
在JavaScript中,數(shù)據(jù)類型用于對一種特定類型的數(shù)據(jù)進行分類,確定可以分配給該類型的值以及可以對其執(zhí)行的操作。
雖然由于類型強制,JavaScript會自動轉換許多值,但為了達到預期的結果,通常最好在類型之間手動轉換值。
本教程將指導您轉換JavaScript的基本數(shù)據(jù)類型,包括數(shù)字、字符串和布爾值。
隱式轉換
作為一種編程語言,JavaScript對意外值的容忍度很高。因此,JavaScript將嘗試轉換意外值,而不是直接拒絕它們。這種隱式轉換稱為類型強制。
有些方法會自動轉換值以便使用它們。alert()方法接受一個字符串作為參數(shù),但它將自動將其他類型轉換為字符串。因此,我們可以傳遞一個數(shù)值給方法:
alert(8.5);
如果我們運行上面的代碼行,瀏覽器將返回一個彈出的警告對話框,其中顯示8.5值,但是它將被轉換為一個字符串。
當使用可以通過數(shù)學運算符計算為數(shù)字的字符串時,您將發(fā)現(xiàn)JavaScript能夠通過隱式地將字符串轉換為數(shù)字來處理這些值,如下面的示例所示。
// Subtraction "15" - "10";
輸出:5
// Modulo "15" % "10";
輸出:5
然而,并不是每個運算符都能像預期的那樣工作。+運算符有明顯的問題,因為它可以表示加法或字符串連接。
// When working with strings, + stands for concatenation "2" + "3";
輸出:"23"
由于+運算符是多用途的,因此盡管是數(shù)字字符串,但字符串值2和3連接為字符串值23,而不是加在一起成為數(shù)字5。
由于模糊性可能存在,有時會導致意外的結果,所以通常最好在代碼中顯式地轉換盡可能多的數(shù)據(jù)類型。這將有助于管理來自用戶的輸入和處理錯誤。
將值轉換為字符串
可以通過調用String()或N.ToString()將值顯式轉換為字符串。
使用String()函數(shù),讓我們通過將值true傳遞給String()的參數(shù),將布爾值轉換為字符串。
String(true);
當我們這樣做時,字符串文字“true”將返回。
輸出:"true"
或者,我們可以向函數(shù)傳遞一個數(shù)字。
String(49);
將返回該數(shù)字的字符串文字。
輸出:"49"
讓我們將String()函數(shù)與變量一起使用。 我們將為變量odyssey分配一個數(shù)字值,然后使用typeof運算符來檢查類型。
let odyssey = 2001; console.log(typeof odyssey);
輸出:number
此時,變量odyssey被賦予2001的數(shù)值,我們已經(jīng)確認它是一個數(shù)字。
現(xiàn)在,讓我們將odyssey重新分配到它的字符串等效值,然后使用typeof來確認我們已經(jīng)成功地將變量的值從一個數(shù)字轉換為一個字符串。
odyssey = String(odyssey); // "2001" console.log(typeof odyssey);
輸出:string
在上面的例子中,我們已經(jīng)確認,在數(shù)據(jù)類型轉換之后,將odyssey重新賦值為一個字符串值。
我們可以以類似的方式使用n.toString()。我們可以用變量替換n:
let blows = 400; blows.toString();
變量blow將作為字符串返回。
輸出:"400"
或者,我們可以把值放在圓括號內,而不是用n.toString()變量:
(1776).toString(); // returns "1776" (false).toString(); // returns "false" (100 + 200).toString(); // returns "300"
通過使用String()或n.toString(),我們能夠顯式地將布爾值或數(shù)字數(shù)據(jù)類型的值轉換為String值,以確保代碼的行為符合我們的預期。
將值轉換為數(shù)字
在將值轉換為數(shù)字數(shù)據(jù)類型時,我們將使用number()方法。首先,我們將把數(shù)字文本字符串轉換為數(shù)字,但我們也可以轉換布爾值。
我們可以將一個數(shù)字串傳遞給number()方法:
Number("1984");
字符串將被轉換為一個數(shù)字,不再用引號括起來。
輸出:1984
我們還可以將一個字符串賦值給一個變量,然后對其進行轉換。
let dalmatians = "101"; Number(dalmatians);
輸出:101
字符串文字“101”通過其變量被轉換為數(shù)字101。
空白字符串或空字符串將轉換為0。
Number(" "); // returns 0 Number(""); // returns 0
注意,非數(shù)字字符串將轉換為NaN, NaN表示非數(shù)字。這包括用空格分隔的數(shù)字。
Number("twelve"); // returns NaN Number("20,000"); // returns NaN Number("2 3"); // returns NaN Number("11-11-11"); // returns NaN
對于布爾數(shù)據(jù)類型,false的值為0,true的值為1。
Number(false); // returns 0 Number(true); // returns 1
方法的作用是:將非數(shù)字數(shù)據(jù)類型轉換為數(shù)字。
將值轉換為布爾值
要將數(shù)字或字符串轉換為布爾值,可以使用Boolean()方法。例如,這對于確定用戶是否將數(shù)據(jù)輸入文本字段非常有用。
任何被解釋為空的值,如數(shù)字0、空字符串或未定義的值、NaN或null,都被轉換為false。
Boolean(0); // returns false Boolean(""); // returns false Boolean(undefined); // returns false Boolean(NaN); // returns false Boolean(null); // returns false
其他值將被轉換為true,包括由空格組成的字符串文字。
Boolean(2000); // returns true Boolean(" "); // returns true Boolean("Maniacs"); // returns true
注意,“0”作為字符串文字將轉換為真,因為它是一個非空字符串值:
Boolean("0"); // returns true
將數(shù)字和字符串轉換為布爾值可以允許我們在二進制術語中計算數(shù)據(jù),并且可以用于程序中的控制流。
以上是JavaScript中的數(shù)據(jù)類型轉換是什么的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)站名稱:JavaScript中的數(shù)據(jù)類型轉換是什么
網(wǎng)頁鏈接:http://www.rwnh.cn/article10/gcgigo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供、網(wǎng)站收錄、網(wǎng)站制作、定制開發(fā)、全網(wǎng)營銷推廣、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)