ES6-数值的扩展-二进制和八进制表示法

ES6 提供了二进制和八进制数值的最新的写法,分别用前缀 0b(0B)和 0o(0O)表示。

 

0b111110111 === 503 // true
0o767 === 503 // true

其实从 ES5 开始,在严格模式中,八进制就不再允许使用前缀 0 表示,ES6 进一步明确要使用前缀 0o 表示。

 

 

// 非严格模式
(function(){
  console.log(0o11 === 011);
})() // true

// 严格模式
  'use strict';
(function(){
  console.log(0o11 === 011);
})() // Uncaught SyntaxError: Octal literals are not allowed in strict mode.

如果要将 0b 和 0o 前缀的字符串数值转换为十进制,要使用 Number 方法。

 

 

Number('0b111')  // 7
Number('0o10')  // 8

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值