ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
### 八进制、十进制、十六进制数字 1、八进制:必须以0开头,超出范围默认取0后面的数值。八进制字面量在严格模式下是无效的,JS会抛出错误。 ``` let num0 = 070 // 56 let num1 = 078 // 78(超出范围) ``` 2、十六进制:必须以0x开头,后面跟任意十六进制数字(0~9及A~F),其中,字母A~F可以大写,也可以小写。 ``` let num0 = 0xA // 10 let num1 = 0x1f // 31 ``` 3、parseInt()方法,该方法能识别8进制、16进制数字。 ``` let num = parseInt(070); // 56 let num2 = parseInt(0x1f); // 31 let num3 = parseInt(''); // NaN ``` parseInt()方法存在第二个参数,代表按什么进制转化 ``` let num0 = parseInt('01', 2); // 2 ``` ### +操作符后面加变量与Number()方法功能一致。 ``` let str = 'hello'; let a = undefined; let b = null; console.log(+str); // NaN console.log(+a); // NaN console.log(+b); // 0 ``` ### parseFloat(),只支持解释10进制数字字符串,会自动省略前面所有的0,如果字符串可解析为整数,会优先返回整数。 ``` console.log(parseFloat('001.001')); // 1.001 console.log(parseFloat('1.00')); // 1 console.log(parseFloat('0x1f')); // 0 ```