30 lines
755 B
JavaScript
30 lines
755 B
JavaScript
const o1 = require('./o1.js');
|
|
|
|
let value = Math.PI;
|
|
let value2 = Math.exp(1);
|
|
|
|
let buffer = o1.encodeArray([
|
|
new o1.Float32(value),
|
|
new o1.Float16(value2)
|
|
]);
|
|
|
|
let buffView = new DataView(buffer);
|
|
|
|
let buff1 = new ArrayBuffer(3);
|
|
let view1 = new DataView(buff1);
|
|
view1.setUint8(0, buffView.getUint8(0));
|
|
view1.setUint8(1, buffView.getUint8(1));
|
|
view1.setUint8(2, buffView.getUint8(2));
|
|
|
|
let buff2 = new ArrayBuffer(1);
|
|
let view2 = new DataView(buff2);
|
|
view2.setUint8(0, buffView.getUint8(3));
|
|
|
|
let buff3 = new ArrayBuffer(2);
|
|
let view3 = new DataView(buff3);
|
|
view3.setUint8(0, buffView.getUint8(4));
|
|
view3.setUint8(1, buffView.getUint8(5));
|
|
|
|
let elt = o1.decodeArray([buff1, buff2, buff3], [o1.Float32, o1.Float16]);
|
|
console.log(elt[0], elt[1]);
|