123456789101112131415161718192021222324252627282930313233 |
- /*!
- * array-slice <https://github.com/jonschlinkert/array-slice>
- *
- * Copyright (c) 2014-2017, Jon Schlinkert.
- * Released under the MIT License.
- */
-
- 'use strict';
-
- module.exports = function slice(arr, start, end) {
- var len = arr.length;
- var range = [];
-
- start = idx(len, start);
- end = idx(len, end, len);
-
- while (start < end) {
- range.push(arr[start++]);
- }
- return range;
- };
-
- function idx(len, pos, end) {
- if (pos == null) {
- pos = end || 0;
- } else if (pos < 0) {
- pos = Math.max(len + pos, 0);
- } else {
- pos = Math.min(pos, len);
- }
-
- return pos;
- }
|