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

JavaScript Set.entries() 메서드 완벽 정리 – 문법과 사용 예제

Set.entries() 메서드는 현재 Set 객체에 저장된 모든 요소를 순서대로 순회할 수 있는 반복자(iterator) 객체를 반환합니다. Map 객체에서는 각 항목이 [키, 값] 쌍으로 구성되지만, Set에는 별도의 키 개념이 없기 때문에 entries()가 반환하는 각 배열에서는 키와 값 자리에 동일한 Set 요소가 중복되어 들어갑니다.

문법

사용 방법은 다음과 같습니다.

setObj.entries()

예제

<html>
<head>
   <title>JavaScript Example</title>
</head>
<body>
   <script type="text/javascript">
      const setObj = new Set();
      setObj.add('Java');
      setObj.add('JavaFX');
      setObj.add('JavaScript');
      setObj.add('HBase');
      const entries = setObj.entries();
      document.write("<br>");
      for (let item of entries) {
         document.write(item);
         document.write("<br>");
      }
   </script>
</body>
</html>

출력 결과

Java,Java
JavaFX,JavaFX
JavaScript,JavaScript
HBase,HBase

출력 결과에서 확인할 수 있듯이, 각 항목의 키와 값이 동일한 요소로 출력됩니다. 이는 Set이 값의 집합만을 다루기 때문입니다.

현대적인 활용 방법

document.write()는 최신 개발 환경에서 권장되지 않으므로, 실무에서는 console.log()나 전개 연산자(spread operator)를 활용하는 것이 좋습니다.

const setObj = new Set(['Java', 'JavaFX', 'JavaScript', 'HBase']);

// 반복자를 배열로 변환하여 확인
const arr = [...setObj.entries()];
console.log(arr);
// [['Java', 'Java'], ['JavaFX', 'JavaFX'], ['JavaScript', 'JavaScript'], ['HBase', 'HBase']]

참고로 Set 객체에는 values(), keys(), forEach() 등 유사한 순회 메서드가 있으며, keys()values()와 완전히 동일하게 동작합니다. 단순히 값만 필요하다면 values()를, 키-값 쌍 구조가 필요하다면 entries()를 사용하면 됩니다.