jsmodern
Version:
An extension to existing JavaScript, influenced by other great languages such as Rust, Dart, Java, Golang, etc.
19 lines • 595 B
JavaScript
export const splitAt = {
label: 'splitAt',
fn: function arraySplitAt(at) {
const ctx = this;
const len = ctx.length;
if ('number' !== typeof (at) || at < 0 || at > len) {
throw new TypeError(`Expect 'at' to be in the range of 0 and length of array`);
}
if (!len)
return [[], []];
const atInt = Number(at);
if (!atInt)
return [[], ctx];
if (atInt === len)
return [ctx, []];
return [ctx.slice(0, atInt), ctx.slice(atInt)];
},
};
//# sourceMappingURL=split-at.js.map