UNPKG

@extra-array/length

Version:
17 lines (16 loc) 419 B
function index(x, i = 0) { return i < 0 ? Math.max(x.length + i, 0) : Math.min(i, x.length); } function indexRange(x, i = 0, I = x.length) { i = index(x, i); I = Math.max(i, index(x, I)); return [i, I]; } function size(x, i = 0, I = x.length) { var [i, I] = indexRange(x, i, I); return I - i; } function length(x, i = 0, I = x.length) { return size(x, i, I); } export { length as default };