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

JavaScript의 array.map 내에서 이전에 반복된 요소에 액세스하시겠습니까?

<시간/>

다음이 우리의 배열이라고 가정해 봅시다 -

var details = [
   {subjectId:110, subjectName: 'Java' },
   {subjectId:111, subjectName: 'Javascript' },
   {subjectId:112, subjectName: 'MySQL' },
   {subjectId:113, subjectName: 'MongoDB' }
];

이제 map()의 개념을 사용하십시오. 코드는 다음과 같습니다 -

예시

var details = [
   {subjectId:110, subjectName: 'Java' },
   {subjectId:111, subjectName: 'JavaScript' },
   {subjectId:112, subjectName: 'MySQL' },
   {subjectId:113, subjectName: 'MongoDB' }
];
var output = details.map((detailsObject, index) =>
{
   var tempObject = {};
   tempObject.subjectId= detailsObject.subjectId;
   tempObject.subjectName = detailsObject.subjectName;
   const getThePreviousObject = index != 0 ? details[index-1] : null;
   tempObject.previousSubjectName = getThePreviousObject ?
   getThePreviousObject.subjectName : 'Not Available'
   return tempObject;
})
console.log(output);

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

node fileName.js.

여기 내 파일 이름은 demo204.js입니다.

출력

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

PS C:\Users\Amit\javascript-code> node demo204.js
[
   {
      subjectId: 110,
      subjectName: 'Java',
      previousSubjectName: 'Not Available'
   },
   {
      subjectId: 111,
      subjectName: 'JavaScript',
      previousSubjectName: 'Java'
   },
   {
      subjectId: 112,
      subjectName: 'MySQL',
      previousSubjectName: 'JavaScript'
   },
   {
      subjectId: 113,
      subjectName: 'MongoDB',
      previousSubjectName: 'MySQL'
   }
]