0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>По сути как первое решение, но чуть усовершенствованное. Работает на ВСЕХ типах, включая объекты и функции (но кроме null/false/undefined)</p>
1
<p>По сути как первое решение, но чуть усовершенствованное. Работает на ВСЕХ типах, включая объекты и функции (но кроме null/false/undefined)</p>
2
<p>const options = [ 'Раз', 2, 3, true, (a, b) => a + b, 4, 'Раз', 56, { a: 1, b: 0 }, 3, 2, (a, b) => a + b, 'Раз', { a: 1, b: 0 }, 1, false, false, true, (a, b) => a + b, ]; const getUniqueOptions = (options) => { return options.reduce( (res, cur) => res.find((find) => JSON.stringify(find) === JSON.stringify(cur)) ? res : [...res, cur], [] ).sort((a, b) => a - b); // и сортировочка для красоты :) }; console.log(getUniqueOptions(options)); // ['Раз', 2, 3, true, ƒ, 4, 56, {…}, 1, false, false]</p>
2
<p>const options = [ 'Раз', 2, 3, true, (a, b) => a + b, 4, 'Раз', 56, { a: 1, b: 0 }, 3, 2, (a, b) => a + b, 'Раз', { a: 1, b: 0 }, 1, false, false, true, (a, b) => a + b, ]; const getUniqueOptions = (options) => { return options.reduce( (res, cur) => res.find((find) => JSON.stringify(find) === JSON.stringify(cur)) ? res : [...res, cur], [] ).sort((a, b) => a - b); // и сортировочка для красоты :) }; console.log(getUniqueOptions(options)); // ['Раз', 2, 3, true, ƒ, 4, 56, {…}, 1, false, false]</p>