티스토리 뷰

< 조건 >

1.  newData라는 배열이 있다.

2.  api 호출하여 값을 전달해줘야하는데 백엔드 쪽에서 설정한 변수가 프론트쪽에서 설정한 변수/DB 컬럼과 다름

3. 백엔드쪽에서 지정해준 변수를 key로 하나의 객체로 보내줘야 함

4. 백엔드에서 설정한 변수명은 keys에 담아두고 newData 배열을 돌리면서 객체로 만들어 값을 넣어줘야 함

5. 만일 keys[index]가 노오랑인 경우 다른 값으로 넣어줘야 함

 

아래는 만든 함수

const newData = [
    { group: '초록', name: 'Alice', date: '2024-03-01' },
    { group: '노랑', name: 'Bob', date: '2024-03-02' },
    { group: '하양', name: 'Charlie', date: '2024-03-01' },
    { group: '연초록', name: 'David', date: '2024-03-02' },
    { group: '파랑', name: 'Eve', date: '2024-03-03' }
];

const arrayData = {};
const keys = ['초오록', '노오랑', '하야앙', '연초로옥', '파라앙'];

newData.forEach((item, index) => {
    const key = keys[index];
    arrayData[key] = item['name'];

    if (key === '노오랑') {
        arrayData[key] = 'changeName';
    }
});

console.log(arrayData);

 

해당 값은 아래처럼 나오게 된다.

{
    "초록": "Alice",
    "노랑": "changeName",
    "하양": "Charlie",
    "연초록": "David",
    "파랑": "Eve"
}