Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

406
Views
¿Cómo empaquetar datos en una matriz de bytes en java script?

Tengo una variable int16 (2 bytes) y una variable int32 (4 bytes). Y quiero empaquetar estas dos variables en la matriz de bytes js. Puedo hacerlo así:

 <script> var int16_1 = 10; var int32_1 = 20; var buffer = new ArrayBuffer(8); var buf_1 = new Int16Array(buffer,0,1); var buf_2 = new Int32Array(buffer,4,1); buf_1[0]=int16_1; buf_2[0]=int32_1; console.log(buffer); </script>

En este caso tengo salida:

 ArrayBuffer(8) byteLength: 8 [[Prototype]]: ArrayBuffer [[Int8Array]]: Int8Array(8) 0: 10 1: 0 2: 0 <-extra use byte 3: 0 <-extra use byte 4: 20 5: 0 6: 0 7: 0

Pero en este caso necesito usar 2 bytes adicionales.

Si trato de hacerlo:

 <script> var int16_1 = 10; var int32_1 = 20; var buffer = new ArrayBuffer(6); var buf_1 = new Int16Array(buffer,0,1); var buf_2 = new Int32Array(buffer,2,1); buf_1[0]=int16_1; buf_2[0]=int32_1; console.log(buffer); </script>

Tengo un error: Uncaught RangeError: el desplazamiento inicial de Int32Array debe ser un múltiplo de 4 en el nuevo Int32Array ()

Si trato de hacerlo:

 <script> var int16_1 = 10; var int32_1 = 20; var buffer = new ArrayBuffer(6); var buf_1 = new Int16Array(buffer,0,1); var buf_2 = new Int32Array(buffer.slice(2),0,1); buf_1[0]=int16_1; buf_2[0]=int32_1; console.log(buffer); </script>

Tengo una salida incorrecta:

 ArrayBuffer(6) byteLength: 6 [[Prototype]]: ArrayBuffer [[Int8Array]]: Int8Array(6) 0: 10 1: 0 2: 0 3: 0 4: 0 5: 0

¿Hay alguna forma de empaquetar datos de diferentes tamaños en una matriz de bytes sin un uso adicional de memoria?

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!