-
[JavaScript] for .. in 문Java script 2023. 12. 7. 16:05
for.. in 문을 이용하면 객체 내부에 있는 모든 프로퍼티들을 불러올 수 있다.
for ( let 변수 in 객체)
객체의 프로퍼티를 하나씩 변수에 저장 (객체의 모든 프로퍼티들이 한번씩 선언한 변수에 저장된다)
let myObject = { first: '알고리즘의 정석', 'second class': '컴퓨터 개론', third: '프로그래밍 기초', }; for (let key in myObject) { console.log(myObject[key]); }
결과값
알고리즘의 정석 컴퓨터 개론 프로그래밍 기초
숫자형(양수) 프로퍼티 이름 사용
let myObject = { 300: '정수', 1.2: '소수', }; // 이떄 300과 1.2의 type은 string
숫자형 네임도 가능하다! 하지만 숫자형으로 저장되는 것이 아닌 문자열로 저장된다
console.log(myObject['300']); console.log(myObject['1.2']); console.log(myObject.300); // Error! console.log(myObject.1.2); // Error!
객체는 정수형 프로퍼티 네임을 오름차순으로 먼저 정렬하고, 나머지 프로퍼티들은 추가한 순서대로 정렬하는 특징
let myObject = { 3: '정수3', name: 'codeit', 1: '정수1', birthDay: '2017.5.17', 2: '정수2', }; for (let key in myObject) { console.log(key); }
결과값
1 2 3 name birthDay
콘솔에 myObject를 출력하였을 때에도 결과값은 똑같다.
{1: "정수1", 2: "정수2", 3: "정수3", name: "codeit", birthDay: "2017.5.17"}
*주의*
자동으로 정렬되는 특성이 장점처럼 느껴질 수도 있지만 대부분의 경우에는 의도치 않은 결과를 가져올 수 있다는 점
'Java script' 카테고리의 다른 글
[JavaScript] slice()와 indexOf() 활용하기 (0) 2024.01.18 [JavaScript] Date 객체 (1) 2023.12.08 [JavaScript] 배열 메소드- 값 찾기 & 추가 & 삭제 (4) 2023.12.07 [Java Script] 배열과 인덱스, 요소 삽입 & 삭제 (2) 2023.12.05 [Java Script] 변수 선언 (1) 2023.12.01