強制類型轉換: 字元轉數值 parseInt();從左向右一次轉換,能轉則轉,不能轉停止;如果第一位就不能轉,直接NaN;不識別小數點。 parseFloat();等同於parseInt,同時可以識別小數點 Math.round();嚴格轉換,不允許出現任何非數字的字元,否則NaN;取最接近的整數 ...
強制類型轉換:
字元轉數值
parseInt();從左向右一次轉換,能轉則轉,不能轉停止;如果第一位就不能轉,直接NaN;不識別小數點。
parseFloat();等同於parseInt,同時可以識別小數點
Math.round();嚴格轉換,不允許出現任何非數字的字元,否則NaN;取最接近的整數
Number();嚴格轉換,不允許出現任何非數字的字元,否則NaN;直接轉換
var str = "123";
var str = "123abc";
var str = "123abc456";
var str = "a123";
var str = "adasd";
var str = "123.45";
var n = parseInt(str);
console.log(str);
console.log(typeof str);
console.log(n);
console.log(typeof n);
var str = "a567.892";
var n = parseFloat(str);
console.log(str);
console.log(typeof str);
console.log(n);
console.log(typeof n);
var str = "-456.789";
var n = Math.round(str);
console.log(str);
console.log(typeof str);
console.log(n);
console.log(typeof n);
var str = "-456.789a";
var n = Number(str);
console.log(str);
console.log(typeof str);
console.log(n);
console.log(typeof n);
數值轉字元
toString();直接轉換,相當於給要轉換的數值,加引號
保留n為小數
toFixed();加引號的同時,四捨五入保留n位小數,不夠,補零
var n = 10.3543;
var s = n.toString();
console.log(n);
console.log(typeof n);
console.log(s);
console.log(typeof s);
var n = 10;
var s = n.toFixed(2);
console.log(n);
console.log(typeof n);
console.log(s);
console.log(typeof s);
console.log(123.567000000)
數值轉字元
var n = 123;
var s = n + "";
console.log(s)
字元轉數值
var s = "123";
var n = s - 0;
console.log(n)
==================================
其他轉數值
true為1,false為0
console.log(1 + true); //2
console.log(1 + false); //1
console.log(1 + undefined); //NaN
console.log(1 + NaN); //NaN
console.log(1 + null); //1