Prefácio
Alguns anos atrás, quando Spidermonkey implementou o modo rigoroso, aprendi que o modo rigoroso desativa a escrita da área inteira octal. Porque há evidências de que alguns novatos usarão os principais 0s para alinhar números em várias linhas, resultando em resultados inesperados:
var sum = 015 + // é equivalente a 13 em decimal, não 15 197 + 001; // De qualquer forma, é 1console.log (soma) // A soma obtida pela adição é 211, não 213 como os novatos pensam
No entanto, alguns desenvolvedores ainda precisam de números inteiros octais (especialmente os desenvolvedores de extensão da Mozilla e desenvolvedores do Node.JS), e o mais comum é o processamento de permissões de arquivos (755, 644). Portanto, o ES6 adicionou um novo método de escrita inteira octal. Semelhante ao hexadecimal 0x ou 0x, o novo número inteiro octal usa 0o ou 0o como identificador principal, seguido por vários caracteres numéricos octal (0 a 7). Este método de escrita não vai mais incomodar os novatos:
var default_perms = 0o644; // também disponível no modo rigoroso
Vale a pena notar que a legibilidade do prefixo 0o é muito ruim (0 e a maçaneta O parece muito semelhante e é difícil de distinguir). Eu levantei essa questão sobre o ESDiscuss, na esperança de desativar o prefixo maiúsculo 0o. No entanto, a decisão atual do TC39 ainda acredita que a consistência deve ser maior que a legibilidade (a consistência significa que ela deve ser consistente com 0x e 0b). Eu acho que essa decisão é discutível e eu recomendo que você nunca use 0o maiúsculas.
Além disso, alguns desenvolvedores também precisam do método de escrita de quantidade inteira binária de superfície, que nunca foi suportada pelo ECMAScript. O ES6 suporta este método de escrita, semelhante ao octal e hexadecimal, usando prefixos 0b ou 0b:
var flt_signbit = 0b1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000IXE 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Atualmente, o Firefox Aurora implementou essas duas sintaxes. Se você é mais aventureiro, também pode usar o Firefox atualizado todas as noites.
Resumir
O acima é o conteúdo inteiro deste artigo. Espero que o conteúdo deste artigo seja útil para todos para aprender ES6. Se você tiver alguma dúvida, deixe uma mensagem para se comunicar.