JS 類型轉換常見方法小結
2024-05-06 14:09:50
供稿:網友
一、類型轉換
1.轉換成字串
ECMAScript的Boolean值、數字和字串的原始值的有趣之處在于它們是偽對象,這意味著它們實際上具有屬性和方法。
如:
Js代碼
代碼如下:
var sColor = "blue";
alert(sColor.length);//outputs "4"
var sColor = "blue";
alert(sColor.length);//outputs "4"
總而言之,3種主要的原始值Boolean值、數字和字串都有toString()方法。ECMAScript定義的所有對象都有toString()方法,無論它是偽對象,還是真的對象。
Boolean型的toString()方法只是輸出"true"或"false",結果由變量的值決定:
Js代碼
代碼如下:
var bFound = false;
alert(bFound.toString());//outputs "false"
var bFound = false;
alert(bFound.toString());//outputs "false"
Number類型的toString()方法比較特殊,它有兩種模式,即默認模式和基模式,采用默認模式,toString()方法只是用相應的字符串輸出數字值(無論是整數、浮點數還是科學記數法)。
Js代碼
代碼如下:
var iNum1 = 10;
var fNum2 = 10.0;
alert(iNum1.toString()); //outputs "10"
alert(fNum2.toString()); //outputs "10"
var iNum1 = 10;
var fNum2 = 10.0;
alert(iNum1.toString()); //outputs "10"
alert(fNum2.toString()); //outputs "10"
采用Number類型的toString()方法的基模式,可以用不同的基(進制基數)輸出數字。
Js代碼
代碼如下:
var iNum = 10;
alert(iNum.toString(2)); //outputs "1010"
alert(iNum.toString(8)); //outputs "12"
alert(iNum.toString(16)); //outputs "A"
var iNum = 10;
alert(iNum.toString(2)); //outputs "1010"
alert(iNum.toString(8)); //outputs "12"
alert(iNum.toString(16)); //outputs "A"
2.轉換成數字
ECMAScript提供了兩種把非數字的原始值轉換成數字的方法,即parseInt()和parseFloat()。
注意:只有對String類型(Number除外)調用這些方法,才能正確運行對其他類型返回的都是NaN。
例如:
Js代碼
代碼如下:
var iNum1 = parseInt("1234blue");//returns 1234
var iNum2 = parseInt("oxA"); //returns 10
var iNum3 = parseInt("22.5"); //returns 22
var iNum4 = parseInt("blue"); //returns NaN
var iNum1 = parseInt("1234blue");//returns 1234
var iNum2 = parseInt("oxA"); //returns 10
var iNum3 = parseInt("22.5"); //returns 22
var iNum4 = parseInt("blue"); //returns NaN
parseInt()方法還有基模式,可以把二進制、八進制、十六進制或者其他任何進制的字符串轉換成十進制整數。第二個參數指定按哪一種進制來解析。
Js代碼
代碼如下:
var iNum1 = parseInt("AF",16);// returns 175
var iNum2 = parseInt("10",2); // returns 2
var iNum3 = parseInt("10",8); //returns 8
var iNum4 = parseInt("10",10); //returns 10
var iNum1 = parseInt("AF",16);// returns 175
var iNum2 = parseInt("10",2); // returns 2