JavaScript提供將數值轉成整數的方法parseInt,用於轉換字串資料“123”,或浮點數1.23。
parseInt("1"); >parseInt("1.2"); // 1
parseInt("-1.2"); // -1
parseInt(1.2); // 1
parseInt(0); // 0
parseInt("0"); // 0
但這個parseInt函數不是常常有效:
複製程式碼 程式碼如下:parseInt('08'); // 0 注意,Google 新版已修正 parseInt("1g"); // 1
parseInt("g1") ; // NaN
為此,我寫了一個函數將任意資料轉換成整數。
複製程式碼
程式碼如下:function toInt(number) {
function toIntnumber) {
1 | 0 || 0;
}
//test
toInt("1"); // 1
toInt("1.2"); // 1
toInt ("-1.2"); // -1
toInt(1.2); // 1
toInt(0); // 0
toInt("0"); // 0
toInt (Number.NaN); // 0
toInt(1/0); // 0
這裡還有網友寫的轉換函數,也記下來提供參考,同樣適合將資料轉換成整數。
function toInt(number) {
function toIntnumber) {
function toIntnumber) { number | 0 || 0;
}
複製程式碼
程式碼如下:
function toInt(number) { return Infinity === number ? 0 : (number*1 || 0).toFixed(0)*1;; }