js 強制轉換 為數字類型


/*
 * 將其他的數據類型轉換為Number
 *      轉換方式一:
 *         使用Number()函數
 *             - 字符串 --> 數字
 *                 1.如果是純數字的字符串,則直接將其轉換為數字
 *                 2.如果字符串中有非數字的內容,則轉換為NaN
 *                 3.如果字符串是一個空串或者是一個全是空格的字符串,則轉換為0
 *             - 布爾 --> 數字
 *                 true 轉成 1
 *                 false 轉成 0
 *
 *             - null --> 數字     0
 *
 *             - undefined --> 數字 NaN
 *
 * 轉換方式二:
 *         - 這種方式專門用來對付字符串
 *         - parseInt() 把一個字符串轉換為一個整數
 *         - parseFloat() 把一個字符串轉換為一個浮點數
 */

var a = "123";

//調用Number()函數來將a轉換為Number類型
a = Number(a);

a = false;
a = Number(a);

a = null;
a = Number(a);

a = undefined;
a = Number(a);

a = "123567a567px";
//調用parseInt()函數將a轉換為Number
/*
 * parseInt()可以將一個字符串中的有效的整數內容去出來,
 *     然后轉換為Number
 */
a = parseInt(a);

/*
 * parseFloat()作用和parseInt()類似,不同的是它可以獲得有效的小數
 */
a = "123.456.789px";
a = parseFloat(a);

/*
 * 如果對非String使用parseInt()或parseFloat()
 *     它會先將其轉換為String然后在操作
 */
a = true;
a = parseInt(a);

a = 198.23;
a = parseInt(a);

console.log(typeof a);
console.log(a);

 ...

/*
 * 在js中,如果需要表示16進制的數字,則需要以0x開頭
 *             如果需要表示8進制的數字,則需要以0開頭
 *             如果要要表示2進制的數字,則需要以0b開頭
 *                 但是不是所有的瀏覽器都支持
 *     
 */

//十六進制
a = 0x10;
a = 0xff;
a = 0xCafe;

//八進制數字
a = 070;

//二進制數字
//a = 0b10;

//向"070"這種字符串,有些瀏覽器會當成8進制解析,有些會當成10進制解析
a = "070";

//可以在parseInt()中傳遞一個第二個參數,來指定數字的進制
a = parseInt(a,10);

console.log(typeof a);
console.log(a);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM