JavaScript數(shù)據(jù)類型轉換實例(其他類型轉字符串、數(shù)值型、布爾類型)
前言
什么是數(shù)據(jù)類型轉換?
使用表單、prompt 獲取過來的數(shù)據(jù)默認類型是字符串類型的,此時就不能直接進行加減法運算,而需要轉換變量的數(shù)據(jù)類型。
通俗來說,數(shù)據(jù)類型轉換就是將一種數(shù)據(jù)類型轉換成另外一種數(shù)據(jù)類型。
在平常代碼的使用中,我們偶爾會遇到需要進行數(shù)據(jù)類型轉換的時候,比如將數(shù)值型轉換為字符串,或者將null/undefined轉換為布爾類型等等,這篇文章我們主要講以下三種類型的轉換:
- 其他類型轉為字符串
- 其他類型轉為數(shù)值型
- 其他類型轉為布爾類型
其他類型轉為字符串:
有三種方法
//第一種方法 var a=5;//數(shù)值類型轉為字符串 var b=a.toString(); console.log(b);//console可以在瀏覽器中打印出輸出的信息 console.log(typeof b);//typeof可以顯示當前文本的類型 //第二種方法 var a=5; console.log(String(a));//直接打印出轉換為字符串類型的內容 //第三種方法 var a=5; var b=''+a; console.log(b); //這種方法利用了在JS中如果有加號,那么從遇到的第一個字符串類型開始,后面的全變?yōu)樽址愋?
如果是布爾類型轉換為字符串類型的話
var a=true; console.log(String(a));//在上述三種類型中任選一種用即可
這樣轉換后的結果還是true
但是如果我們用
console.log(typeof String(a));
驗證后,就會發(fā)現(xiàn)雖然顯示還是true,但類型已經轉換為字符串類型。
其他類型轉為數(shù)值型
同樣也有三種方法
//第一種方法
var a='1';
var b=Number(a);
console.log(b);//內容為數(shù)值的字符型轉數(shù)值,最終顯示結果就為原數(shù)值
var c=Number('c');
var d=Number(null);//在這里null可以轉換為0
var e=Number(undefined);
console.log(c,d,e);
//輸出結果為NaN 0 NaN
//NaN表示not a number
注:如果是字符串類型轉數(shù)值類型,那么串內的內容必須要是數(shù)字,如果不是則會顯示NaN。
//第二種方法
//int表示整型數(shù)值
var a=parseInt('5');
var b=parseInt('q12');
var c=parseInt(null);
var d=parseInt(undefined);
console.log(a,b,c,d);
//輸出結果為5 NaN NaN NaN
可以看到,第二種方法的null沒有轉換為0,而是NaN。
//第三種方法
//float表示浮點型數(shù)值
var a=parseFloat('2.56qwe');
var b=parseFloat('2.4.6.8');
var c=parseFloat('q12');
var d=parseFloat(null);
var e=parseFloat(undefined);
console.log(a,b,c,d,e);
//輸出結果為2.56 2.4 NaN NaN NaN
當轉換類型為浮點型數(shù)值時
會默認輸出第一個小數(shù)點前的數(shù)字以及第一個小數(shù)點后的所有有效數(shù)字,如遇到字符或者第二個小數(shù)點停止。
其他類型轉為布爾類型
只有一種方法
var a=Boolean('0');
var b=Boolean(0);
var c=Boolean('5');
var d=Boolean(null);
var e=Boolean(undefined);
var f=Boolean('');//字符串內容為空
var g=Boolean(' ');//字符串內容為空格
console.log(a,b,c,d,e,f,g);
//輸出結果為true false true false false false true
注意:如果是字符串轉換為布爾類型,那么只要字符串中有內容(內容為空格也算有內容),轉換結果就為true,如果字符串內容為空,則為false。
總結
到此這篇關于JavaScript數(shù)據(jù)類型轉換的文章就介紹到這了,更多相關JavaScript數(shù)據(jù)類型轉換內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Javascript的promise,async和await的區(qū)別詳解
這篇文章主要為大家詳細介紹了Javascript的promise,async和await的區(qū)別,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03

