Skip to content
Zade Viggers edited this page May 23, 2024 · 5 revisions

Note

This page has been updated for jDataView 3

Explanation

The native DataView setter methods (e.g. setUint32(byteOffset, value, littleEndian)) require byteOffset to be always passed in the first argument.

jDataView allows passing undefined as the byteOffset for sequential writes with the setXXX methods, but this can get tiresome.

To provide nicer ergonomics, jDataView provides a series of writeXXX methods that correspond to each of the setXXX methods. These writeXXX methods automatically set the byteOfffset parameter to undefined.

Reference

writeXXX(value, ...) (works for any setXXX(undefined, value, ...) method)

Native DataView types

See MDN documentation for more information.

writeFloat64(value: number, littleEndian?: boolean): void
writeFloat32(value: number, littleEndian?: boolean): void
writeBigInt64(value: bigint, littleEndian?: boolean): void
writeBigUint64(value: bigint, littleEndian?: boolean): void
writeInt32(value: number, littleEndian?: boolean): void
writeUint32(value: number, littleEndian?: boolean): void
writeInt16(value: number, littleEndian?: boolean): void
writeUint16(value: number, littleEndian?: boolean): void
writeInt8(value: number, littleEndian?: boolean): void
writeUint8(value: number, littleEndian?: boolean): void
writeInt64(value: number, littleEndian?: boolean): void
writeUint64(value: number, littleEndian?: boolean): void

jDataView's extra types

See the Strings and Blobs and Arbitrary‐size integers pages for more information.

writeBytes(value: ArrayLike<number>): void
writeString(subString: string, encoding?: string): void
writeChar(character: string): void
writeSigned(value: number, bitLength: number): void
writeUnsigned(value: number, bitLength: number): void

Clone this wiki locally