javascript-tutorial / javascript-tutorial/en.javascript.info

Mention endianness and alignment in section ArrayBuffers, binary arrays

Aberta Para iniciantes
#2,581 1 comentário 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

PR wanted
Linguagem predominante
HTML
Estrelas
25.5k
Forks
4k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

* Alignment: My browser (Firefox 87.0 on Linux x86_64) doesn't let me create an unaligned Uint16Array. I. e., `new Uint16Array(b, 1, 1)` on a 4-byte array buffer gives `RangeError: attempting to construct out-of-bounds TypedArray on ArrayBuffer`. In the standard that is [22.2.1.5](https://262.ecma-international.org/6.0/#sec-%typedarray%-buffer-byteoffset-length).13a.

* Endianness: Uint16Array is little-endian on my machine. I just learned that this is machine dependent ([https://stackoverflow.com/questions/7869752/javascript-typed-arrays-and-endianness](Stackoverflow)). In contrast, `dataView.getUint16()` is big-endian, unless the second argument is true.

Hope this helps.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Encontre a seção do tutorial intitulada “ArrayBuffers, binary arrays” e revise a explicação existente sobre arrays tipados e DataView. Adicione notas claras cobrindo as restrições de alinhamento e a distinção de endianness descritas na issue, incluindo o comportamento relevante de Uint16Array e dataView.getUint16(). Está concluído quando os leitores conseguirem entender ambas as ressalvas a partir dessa seção.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
javascript
Domínio
documentation
Tipo de issue
Documentação
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
65/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.