“Массивы” - часть 5

.sortedLastIndexOf(array, value)

source,
npm package.

Этот метод подобен _.lastIndexOf за исключением того, что он выполняет двоичный поиск в отсортированном массиве.

Версия: 4.0.0

Аргументы

array (Array): Массив для проверки.
value (*): Значение для поиска.

Возвращает

(number): Возвращает индекс найденного значения, иначе -1.

Пример


_.sortedLastIndexOf([4, 5, 5, 5, 6], 5);
// => 3

.sortedUniq(array)

source,
npm package.

Этот метод подобен _.uniq за исключением того, что он создан и оптимизирован для отсортированных массивов.

Версия: 4.0.0

Аргументы

array (Array): Массив для обработки.

Возвращает

(Array): Возвращает новый дубликат отсортированного массива.

Пример


_.sortedUniq([1, 1, 2]);
// => [1, 2]

.sortedUniqBy(array, [iteratee])

source,
npm package.

Этот метод подобен _.uniqBy за исключением того, что он создан и оптимизирован для отсортированных массивов.

Версия: 4.0.0

Аргументы

array (Array): Массив для обработки.
[iteratee] (Function): iteratee ссылаться на элемент.

Возвращает

(Array): Возвращает новый дубликат отсортированного массива.

Пример


_.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);
// => [1.1, 2.3]

.tail(array)

source,
npm package.

Получает все, кроме первого элемента массива.

Версия: 4.0.0

Аргументы

array (Array): Массив для запроса.

Возвращает

(Array): Возвращает срез массива.

Пример


_.tail([1, 2, 3]);
// => [2, 3]

.take(array, [n=1])

source,
npm package.

Создает срез массива из n элементов, взятых с начала массива.

Версия: 0.1.0

Аргументы

array (Array): Массив для запроса.
[n=1] (number): Количество взятых элементов.

Возвращает

(Array): Возвращает срез массива.

Пример


_.take([1, 2, 3]);
// => [1]
 
_.take([1, 2, 3], 2);
// => [1, 2]
 
_.take([1, 2, 3], 5);
// => [1, 2, 3]
 
_.take([1, 2, 3], 0);
// => []

.takeRight(array, [n=1])

source,
npm package.

Создает срез массива из n элементов, взятых с конца массива.

Версия: 3.0.0

Аргументы

array (Array): Массив для запроса.
[n=1] (number): Количество взятых элементов.

Возвращает

(Array): Возвращает срез массива.

Пример


_.takeRight([1, 2, 3]);
// => [3]
 
_.takeRight([1, 2, 3], 2);
// => [2, 3]
 
_.takeRight([1, 2, 3], 5);
// => [1, 2, 3]
 
_.takeRight([1, 2, 3], 0);
// => []

.takeRightWhile(array, [predicate=_.identity])

source,
npm package.

Создает срез массива из n элементов, взятых с конца массива.

Элементы принимаются до тех пор пока predicate возвращает лож.

predicate вызывается с тремя аргументами: (value, index, array).

Версия: 3.0.0

Аргументы

array (Array): Массив для запроса.
[predicate=_.identity] (Function): Функция вызывается на каждой итерации.

Возвращает

(Array): Возвращает срез массива.

Пример


var users = [
  { 'user': 'barney',  'active': true },
  { 'user': 'fred',    'active': false },
  { 'user': 'pebbles', 'active': false }
];
 
_.takeRightWhile(users, function(o) { return !o.active; });
// => objects for ['fred', 'pebbles']
 
// The `_.matches` iteratee shorthand.
_.takeRightWhile(users, { 'user': 'pebbles', 'active': false });
// => objects for ['pebbles']
 
// The `_.matchesProperty` iteratee shorthand.
_.takeRightWhile(users, ['active', false]);
// => objects for ['fred', 'pebbles']
 
// The `_.property` iteratee shorthand.
_.takeRightWhile(users, 'active');
// => []

.takeWhile(array, [predicate=_.identity])

source,
npm package.

Создает срез массива из n элементов, взятых с начала массива.

Элементы принимаются до тех пор пока predicate возвращает лож.

predicate вызывается с тремя аргументами: (value, index, array).

Версия: 3.0.0

Аргументы

array (Array): Массив для запроса.
[predicate=_.identity] (Function): Функция вызывается на каждой итерации.

Возвращает

(Array): Возвращает срез массива.

Пример


var users = [
  { 'user': 'barney',  'active': false },
  { 'user': 'fred',    'active': false },
  { 'user': 'pebbles', 'active': true }
];
 
_.takeWhile(users, function(o) { return !o.active; });
// => objects for ['barney', 'fred']
 
// The `_.matches` iteratee shorthand.
_.takeWhile(users, { 'user': 'barney', 'active': false });
// => objects for ['barney']
 
// The `_.matchesProperty` iteratee shorthand.
_.takeWhile(users, ['active', false]);
// => objects for ['barney', 'fred']
 
// The `_.property` iteratee shorthand.
_.takeWhile(users, 'active');
// => []

.union([arrays])

source,
npm package.

Создает массив из уникальных значений, из всех указанных массивов с использованием SameValueZero для сравнения на равенство.

Версия: 0.1.0

Аргументы

[arrays] (...Array): Массивы для проверки.

Возвращает

(Array): Возвращает новый массив из комбинированных значений.

Пример


_.union([2], [1, 2]);
// => [2, 1]

.unionBy([arrays], [iteratee=_.identity])

source,
npm package.

что он создан и оптимизирован для отсортированных массивов.

Этот метод подобен _.union за исключением того что iteratee вызывается для каждого элемента каждого массива, чтобы создать критерий, по которому вычисляется уникальность.

Значения выбираются из первого массива, в котором значение происходит. В iteratee вызывается с одним аргументом: (value).

Версия: 4.0.0

Аргументы

[arrays] (...Array): Массивы для проверки.
[iteratee=_.identity] (Function): iteratee ссылаться на элемент.

Возвращает

(Array): Возвращает новый массив из комбинированных значений.

Пример


_.unionBy([2.1], [1.2, 2.3], Math.floor);
// => [2.1, 1.2]
 
// The `_.property` iteratee shorthand.
_.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');
// => [{ 'x': 1 }, { 'x': 2 }]