if (typeof padding !== 'number') {\r
throw new TypeError('Invalid padding when converting hex to array', { cause: padding })\r
}\r
- if (hex.length % 2 === 1) hex = `0${hex}`\r
+ if ((hex.length & 1) !== 0) hex = `0${hex}`\r
const hexArray = hex.match(/.{2}/g)\r
if (hexArray == null) {\r
throw new RangeError('Invalid hex string when converting to array', { cause: hexArray })\r
}\r
- for (let i = hexArray.length; i < padding; i++) {\r
- hexArray.unshift('0')\r
- }\r
- return hexArray.map(v => parseInt(v, 16))\r
+ const diff = padding - hexArray.length\r
+ const pad = new Array(diff > 0 ? diff : 0).fill(0)\r
+ return pad.concat(hexArray.map(v => parseInt(v, 16)))\r
}\r
\r
/**\r