gnablib
Version:
A lean, zero dependency library to provide a useful base for your project.
2 lines • 362 B
JavaScript
/*! Copyright 2023-2025 the gnablib contributors MPL-1.1 */
const c=16777216;export class Crc24{constructor(){this._crc=11994318,this.size=3}write(r){for(const t of r){this._crc^=t<<16;for(let r=0;r<8;r++)this._crc<<=1,(this._crc&c)==c&&(this._crc^=25578747)}}sum24(){return 16777215&this._crc}sum(){return Uint8Array.of(this._crc>>>16,this._crc>>>8,this._crc)}}