소개
이 랩에서는 제공된 비교 함수를 기반으로 배열 내의 모든 고유 값을 찾는 JavaScript 함수를 탐구합니다. Array.prototype.reduce() 및 Array.prototype.some() 메서드를 사용하여 제공된 비교 함수를 기반으로 각 값의 첫 번째 고유 발생만 포함하는 새 배열을 생성합니다. 이 랩은 JavaScript 에서 배열을 조작하는 방법에 대한 더 깊은 이해를 제공할 것입니다.
이 랩에서는 제공된 비교 함수를 기반으로 배열 내의 모든 고유 값을 찾는 JavaScript 함수를 탐구합니다. Array.prototype.reduce() 및 Array.prototype.some() 메서드를 사용하여 제공된 비교 함수를 기반으로 각 값의 첫 번째 고유 발생만 포함하는 새 배열을 생성합니다. 이 랩은 JavaScript 에서 배열을 조작하는 방법에 대한 더 깊은 이해를 제공할 것입니다.
배열의 모든 고유 값을 찾으려면 비교 함수를 제공하십시오.
Array.prototype.reduce() 및 Array.prototype.some()을 사용하여 각 값의 첫 번째 고유 발생만 포함하는 배열을 생성합니다. 비교 함수 fn은 비교되는 두 요소의 값을 인수로 받습니다.
const uniqueElementsBy = (arr, fn) =>
arr.reduce((acc, v) => {
if (!acc.some((x) => fn(v, x))) acc.push(v);
return acc;
}, []);
함수를 테스트하려면 아래 예제를 사용하십시오.
uniqueElementsBy(
[
{ id: 0, value: "a" },
{ id: 1, value: "b" },
{ id: 2, value: "c" },
{ id: 1, value: "d" },
{ id: 0, value: "e" }
],
(a, b) => a.id == b.id
); // [ { id: 0, value: 'a' }, { id: 1, value: 'b' }, { id: 2, value: 'c' } ]
Terminal/SSH를 열고 node를 입력하여 코딩 연습을 시작하십시오.
축하합니다! 함수 기반 배열의 고유 값 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.