Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

id가 JavaScript의 다른 개체 배열의 ID와 일치하는지 여부에 관계없이 배열의 개체 속성을 true/false로 설정하시겠습니까?

<시간/>

배열의 객체 속성을 true/false로 설정하려면 id가 다른 객체 배열의 id와 일치하는지 여부에 관계없이 map()과 함께 reduce()를 사용할 수 있습니다.

예시

다음은 코드입니다 -

let
firstDetails=[{"studentId":101,"studentName":"John"},{"studentI d":102,"studentName":"David"},{"studentId":103,"studentName":"B ob"}]
let
secondDetails=[{"studentId":101,"studentName":"Robert"},{"stude ntId":109,"studentName":"Mike"},{"studentId":103,"studentName": "Adam"}]
const obj = secondDetails.reduce((o, v) => (o[v.studentId] = true, o), {})
const output = firstDetails.map(v => ({ ...v, matchingResult: obj[v.studentId] || false}))
console.log(output)

위의 프로그램을 실행하려면 아래 명령을 사용해야 합니다 -

node fileName.js.

여기에서 내 파일 이름은 demo316.js입니다.

출력

이것은 다음과 같은 출력을 생성합니다 -

PS C:\Users\Amit\javascript-code> node demo316.js
[
   { studentId: 101, studentName: 'John', matchingResult: true },
   { studentId: 102, studentName: 'David', matchingResult: false },
   { studentId: 103, studentName: 'Bob', matchingResult: true }
]