Js數據類型轉換

數據類型轉換問題ide

 

JS和PHP是弱類型語言,都存在數據類型的轉換操做函數

數據類型轉換分爲2種:1)自動數據類型轉換 (隱式轉換)  2)強制數據類型轉換 (顯式轉換)spa

自動數據類型轉換如何發生:通常發生在運算和判斷過程當中.對象

 

強制數據類型轉換:字符串

Number數據類型轉換:string

parseInt()   字符串 轉 整型io

1.純數值轉後類型爲number值不變console

var str1='250';------number-----值250 function

2.數值開頭,轉後類型爲number,值爲開始的數值test

var str1='222csasd23sad323';-----number-----值222

3.不是以數值開頭,轉後爲NaN

var str1='afdfds2323232';-----number-----值NaN

 

//查看原數據類型

console.log('數據類型:'+typeof str1 +'-----值'+str1);

//數據類型轉換 返回轉換後的新數據!!!!!!!!!!!!!!

var newstr1=parseInt(str1);

//查看轉換後的數據類型

console.log('數據類型:'+typeof newstr1 +'-----值'+newstr1);

parseFloat() 將字符串強制轉換爲浮點型

1純數值,轉後類型爲number,值不變

var str1='3.12121';--------number-----值3.12121

2以數值開頭,轉後類型爲number,值爲開始的數值

var str1='3.1323afdfcdsds';------:number-----值3.1323

3不是以數值開頭,轉後爲NaN

var str1='sfdcfsdvc23.43443';-----number-----值NaN

 

//查看原數據類型

console.log('數據類型:'+typeof str1 +'-----值'+str1);

//數據類型轉換 返回轉換後的新數據!!!!!!!!!!!!!!

var newstr1=parseFloat(str1);

//查看轉換後的數據類型

console.log('數據類型:'+typeof newstr1 +'-----值'+newstr1);

Number()  將其餘類型轉換爲數值類型

Undefined類型->NaN

var str1=undefined;數據類型:---undefined-----值undefined -----數據類型:number-----值NaN

Boolean了類型-> true  1  false 0

var str1=true---數據類型:boolean-----值true ---------------------------數據類型:number-----值1

Number類型->不須要轉換

var str1=123; //數據類型:number-----值123 --------------數據類型:number-----值123

String類型-> 純數值:類型改變值不變,其餘狀況都是NaN

var str1='132132'; //數據類型:string-----值132132 ------數據類型:number-----值132132

var str1='12132ddc'; //數據類型:string-----值12132ddc ------數據類型:number-----值NaN var str1='dsadsa12'; //數據類型:string-----值dsadsa12 ------數據類型:number-----值NaN

Function類型->NaN

var str1=function(){ //數據類型:function-----值function (){ alert('111111111');}--數據類型:number-----值NaN

Object類型->NaN    null:0

var str1=new Object(); //數據類型:object-----值[object Object] ---數據類型:number-----值NaN

var str1=null;  //數據類型:object-----值null----------數據類型:number-----值0

 

//查看原數據類型var newstr1=Number(str1);

console.log('數據類型:'+typeof str1 +'-----值'+str1);

//數據類型轉換 返回轉換後的新數據!!!!!!!!!!!!!!

var newstr1=Number(str1);

//查看轉換後的數據類型

console.log('數據類型:'+typeof newstr1 +'-----值'+newstr1);

 

字符串類型轉換:

轉換方式有2種:

1.使用String() 函數

格式: 變量=String(變量)

//字符串類型轉換 使用var newtest=String(test);

//var test=0; //整數:----數據類型:number-----值0-----------------------------數據類型:string-----值0

//var test=true; //布爾型:--數據類型:boolean-----值true ------------------------數據類型:string-----值true

//var test=3232.12312; //浮點數----數據類型:number-----值3232.12312--------------------數據類型:string-----值3232.12312

//var test=undefined; //未定義----數據類型:undefined-----值undefined------------------數據類型:string-----值undefined

//var test=function(){alert(111);}//函數------數據類型:function-----值function (){alert(111);}--數據類型:string-----值function (){alert(111);}

var test=new Object(); //對象------數據類型:object-----值[object Object]---------------數據類型:string-----值[object Object]

 

//查看原數據類型

console.log('數據類型:'+typeof test +'-----值'+test);

//數據類型轉換 返回轉換後的新數據!!!!!!!!!!!!!!

var newtest=String(test);

//查看轉換後的數據類型

console.log('數據類型:'+typeof newtest +'-----值'+newtest);

2.使用.toString() 方法進行轉換

格式:變量=變量.toString()

var test=false; //布爾型----數據類型:boolean-----值false------------------------數據類型:string-----值false

 

//查看原數據類型

console.log('數據類型:'+typeof test +'-----值'+test);

//數據類型轉換 返回轉換後的新數據!!!!!!!!!!!!!!

var newtest=test.toString();

//查看轉換後的數據類型

console.log('數據類型:'+typeof newtest +'-----值'+newtest);

 

注意:進行字符串強制轉換以後,通常都會將原有類型的內容轉話爲對應的字符串形式,對象除外.

 

布爾類型轉換:

使用Boolean()方法進行轉換

轉化爲布爾值false的狀況:

Number  ->  0和0.0、NaN轉化爲false

String   -> 空字符串轉化爲false

Boolean  -> false轉化爲false

Undefined ->undefined 轉化爲false

Function   -> 永遠爲真

Object   -> 只有null爲false

 

//布爾類型轉換

//var test=0; //數據類型:number-----值0 ----------------數據類型:boolean-----值false

//var test=0.0; //數據類型:number-----值0 ----------------數據類型:boolean-----值false

//var test=NaN; //數據類型:number-----值NaN --------------數據類型:boolean-----值false

//var test=''; //數據類型:string-----值 -----------------數據類型:boolean-----值false

//var test=false; //數據類型:boolean-----值false -----------數據類型:boolean-----值false

//var test=undefined; //數據類型:undefined-----值undefined -----數據類型:boolean-----值false

//var test=null; //數據類型:object-----值null -------------數據類型:boolean-----值false  除了null以外的對象類型所有爲真

//var test=new Object();//數據類型:object-----值[object Object]---數據類型:boolean-----值true

var test=function(){}; //數據類型:function-----值function (){} --數據類型:boolean-----值true

 

//查看原數據類型

console.log('數據類型:'+typeof test +'-----值'+test);

//數據類型轉換 返回轉換後的新數據!!!!!!!!!!!!!!

var newtest=Boolean(test);

//查看轉換後的數據類型

console.log('數據類型:'+typeof newtest +'-----值'+newtest);

相關文章
相關標籤/搜索