Dark_Knight
@Dark_Knight
Game Dev

Как найти совпадения в массиве и добавить их в двумерный массив?

Здравствуйте.
Ищу совпадения в массиве:
var arr = [0, 0, 4, 8, 8, 10, 45, 0, 23, 3 ,8];
var result = arr.filter(function (item, index, array) {    
	return array.indexOf(item) !== array.lastIndexOf(item); // [0, 0, 8, 8, 0, 8]
});

Вопрос: как сделать так, чтоб для отдельных совпадений, создавался свой массив? То есть, конечный результат должен быть такой: [[0, 0, 0], [8, 8, 8]]
  • Вопрос задан
  • 2234 просмотра
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Проще всего воспользоваться не двумерным массивом, а объектом, где ключами будут элементы arr, а значениями количество повторений.
Из этого объекта можно уже и двумерный массив собрать при желании.
Но для этого filter не подойдет, нужно будет просто итерировать массив.

Например, так - jsfiddle.net/h68tz47f
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы