Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript에서 null 또는 빈 객체가 있는 배열에 값을 할당하는 방법

JavaScript에서 null 또는 빈 객체({})로 이루어진 배열에 값을 할당하려면, 원본 객체의 키 목록을 활용해 각 빈 객체에 순서대로 속성을 추가하면 됩니다. 여기서 핵심 역할을 하는 것은 바로 Object.keys() 메서드입니다.

핵심 개념: Object.keys()

Object.keys(obj)는 객체가 가진 모든 키(속성 이름)를 배열 형태로 반환합니다. 아래 예제의 obj 객체에는 firstName, lastName, address라는 세 개의 키가 있으므로, 이 키들을 인덱스처럼 활용하면 빈 객체 배열의 각 요소에 하나씩 속성을 할당할 수 있습니다.

예제 코드

다음은 JavaScript를 사용하여 빈 객체가 있는 배열에 값을 할당하는 전체 코드입니다.

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
   body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
   }
   .result {
      font-size: 18px;
      font-weight: 500;
      color: rebeccapurple;
   }
</style>
</head>
<body>
<h1>빈 객체 배열에 값 할당하기</h1>
<div class="result"></div>
<button class="Btn">CLICK HERE</button>
<h3>위 버튼을 클릭하면 arrObj 내부의 빈 객체에 값이 할당됩니다</h3>
<script>
   let resEle = document.querySelector(".result");
   let BtnEle = document.querySelector(".Btn");
   let obj = {
      firstName: "Rohan",
      lastName: "Sharma",
      address: "Delhi",
   };
   let arrObj = [{}, {}, {}];
   BtnEle.addEventListener("click", () => {
      arrObj.forEach((item, index) => {
         item[Object.keys(obj)[index]] = obj[Object.keys(obj)[index]];
      });
      console.log(arrObj);
   });
</script>
</body>
</html>

코드 동작 방식

버튼을 클릭하면 forEach 루프가 arrObj 배열의 각 빈 객체를 순회합니다. 이때 Object.keys(obj)[index]로 원본 객체의 키를 하나씩 가져오고, 동일한 인덱스에 해당하는 값을 그 키에 할당합니다. 그 결과 첫 번째 빈 객체에는 firstName, 두 번째에는 lastName, 세 번째에는 address가 각각 저장되며, 최종 결과는 console.log(arrObj)를 통해 콘솔에 출력됩니다.

실행 결과

위 코드를 실행하면 다음과 같은 화면이 나타납니다.

JavaScript에서 null 또는 빈 객체가 있는 배열에 값을 할당하는 방법

'CLICK HERE' 버튼을 클릭한 뒤 콘솔에서 출력을 확인하면 다음과 같습니다.

JavaScript에서 null 또는 빈 객체가 있는 배열에 값을 할당하는 방법