UNPKG

@extra-array/cut-at-right

Version:

Breaks array after given indices.

18 lines (17 loc) 406 B
function index(x, i = 0) { return i < 0 ? Math.max(x.length + i, 0) : Math.min(i, x.length); } function cutAt(x, is) { var a = [], j = 0; for (var i of is) { i = Math.max(j, index(x, i)); a.push(x.slice(j, i)); j = i; } a.push(x.slice(i)); return a; } function cutAtRight(x, is) { return cutAt(x, is.map(i => i + 1)); } export { cutAtRight as default };