ES6 의 Array. from 방법 과 Object. values 의 차이
여기 서 클래스 배열 은 key 를 숫자 로 하고 value 는 다른 유형의 대상 이 될 수 있 으 며 그의 실질 적 인 대상 은 key (키) 에 불과 하 다.그리고 js 에는 Object. values () 방법 이 있 습 니 다. 주어진 대상 자체 의 모든 속성 값 을 되 돌려 주 는 방법 입 니 다. 값 의 순 서 는 for... in 순환 의 순서 와 같 습 니 다. 먼저 Object. values 방법 을 사용 합 니 다.
var obj = {
0:'3',
1:{
key:' '
},
2:5,
}
console.log(Object.values(obj)) //[ '3', { key: ' ' }, 5 ]
다음은 Array. from ()
var obj = {
0:'3',
1:{
key:' '
},
2:5,
length:3 //array.from , length ( ),
}
console.log(Array.from(obj)) //[ '3', { key: ' ' }, 5 ]
한눈 에 보면 이 두 가지 방법의 용 도 는 똑 같 고 Array. from 이 더 귀 찮 은 것 같 습 니 다. (length 속성 을 더 해 야 하기 때 문 입 니 다) 그렇다면 왜 이런 새로운 방법 을 추가 하 셨 습 니까?우리 위의 속성 명 은 0, 1, 2 를 사용 합 니 다.우리 이제 1, 2, 5 로 바 꿔 보 자. 똑 같이 Object. values 부터 보 자.
var obj = {
1:'3',
2:{
key:' '
},
5:5,
}
console.log(Object.values(obj)) //[ '3', { key: ' ' }, 5 ]
여기에서 우 리 는 출력 이 속성 명 을 바 꾸 었 기 때문에 바 뀌 지 않 았 음 을 볼 수 있 습 니 다. 우 리 는 Array. from 을 계속 볼 수 있 습 니 다.
var obj = {
1:'3',
2:{
key:' '
},
5:5,
length:3
}
console.log(Array.from(obj)) //[ undefined, '3', { key: ' ' } ]
여기 서 의 결 과 는 크게 달 라 졌 다. 심지어 undefined 도 나 타 났 다. 그리고 우리 의 속성 이름 이 5 인 속성의 값 은 나타 나 지 않 았 다. 나 는 이곳 을 본 친구 들 이 반드시 발견 했다 고 믿는다. 우리 가 Object. values 방법 을 사용 할 때 목표 대상 의 속성의 값 을 하나씩 꺼 내 서 배열 에 주 었 을 뿐이다.속성 이름 때문에 출력 결과 에 영향 을 주지 않 습 니 다.한편, Array. from 방법 은 우리 대상 의 속성 을 아래 표 (key 가 얼마 인지 아래 표 시 는 얼마 인지) 로 하고 length 는 출력 배열 의 길 이 를 규정 합 니 다. 속성 명 (즉 배열 의 아래 표) 이 경 계 를 넘 으 면 배열 에 도 이 값 이 없 을 것 입 니 다.length 범위 에 속 하지만 obj 속성 에 있 지 않 은 값 (즉, 우리 배열 의 첫 번 째) 은 undefined 입 니 다.우리 의 대상 에 속성 이름 이 0 인 속성 이 없 기 때문에 배열 의 이 값 은 undefined 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.