JavaScript: Lee 8 bytes a entero de 64 bits
Tengo un objeto de búfer que contiene ocho bytes. Estos ocho bytes ahora deben interpretarse como un entero de 64 bits.
Actualmente utilizo el siguiente algoritmo:
var int = buff[0];
for (var i = 1; i < buff.length; i++) {
int += (buff[i] * Math.pow(2, 8 * i));
}
console.log(int);
esto funciona pero creo que hay mejores maneras (tal vez utilizando Uint64Array).
Desafortunadamente no puedo encontrar la forma en que un Uint16Array podría ayudarme aquí.
Saludos
Actualizar:
// puts two 32bit integers to one 64bit integer
var bufInt = (buf.readUInt32BE(0) << 8) + buf.readUInt32BE(4);