Помогите сделать перебор массива на JS

307
18 мая 2017, 11:52

var a = [5, 2, 5, 56, 2, 1, 2]; 
var b = []; 
for (var c = 0; c < a.length; c++) { 
  for (var q = 1; q < a.length; q++) { 
    if (a[c] === a[q]) { 
      //alert(a[q]) 
      b.push(a[q]) 
    } 
  } 
} 
console.log(b)

Надо найти повторяющиеся значения и вывести их на консоль. Что я делаю не так????

Answer 1

var a = [5, 2, 5, 56, 2, 1, 2]; 
var b = {}; 
for(var c = 0; c < a.length; c++){ 
  b[a[c]] = b[a[c]]? (b[a[c]] + 1) : 1; 
} 
console.log(b); 
for (var key in b) { 
  if (b[key] > 1) 
    console.log(key); 
}

READ ALSO
запуск JS кода на странице из Python

запуск JS кода на странице из Python

Моя задача получить список имен в scope браузера на какой-то странице, используя PythonКак параметр функции я получаю URL запроса

373
Использование Fabric.js и Marionette.js

Использование Fabric.js и Marionette.js

Подскажите, как использовать Fabricjs в Marionette

337
По клику изменять .text div&#39;a туда и обратно

По клику изменять .text div'a туда и обратно

Есть div с текстом: Показать всеПо клику на него должен меняться текст на Скрыть все

380
Некорректный скроллинг при DOMContentLoaded

Некорректный скроллинг при DOMContentLoaded

Страница разбита на n суперблоков структуры:

260