Object.keys() 를 이용해 배열을 순회하려고 하는데 key값이 index로 들어가는 문제가 있었습니다.
Object.keys() 함수는 객체의 키들을 배열로 반환합니다. 이 배열의 인덱스는 0부터 시작하므로, for...in 루프를 사용하여 객체의 키들을 순회할 때, 첫 번째 키는 0이 됩니다.
이 경우 for...in 루프 대신 for...of 루프를 사용하면, 배열의 각 요소를 직접 참조할 수 있습니다. for...of 루프는 배열의 값을 순회하며, 배열의 인덱스를 신경쓰지 않기 때문에 위와 같은 문제가 발생하지 않습니다.
let data = this.data;
let keys = Object.keys(data);
for (let key of keys) {
this.data[key] = data[key];
}
for...of 루프를 사용하여 keys 배열의 각 요소인 키를 직접 참조하고, 해당 키를 사용하여 data 객체의 값을 복사하는 코드입니다.
'Frontend > javaScript' 카테고리의 다른 글
eslint-disable not working (0) | 2023.04.27 |
---|---|
[javaScript] 파일 업로드, 다운로드 (파일 깨짐 해결, readAsArrayBuffer, btoa, _arrayBufferToBase64) (0) | 2023.04.25 |
[javaScript] 자식 노드 탐색 (재귀) (0) | 2023.04.13 |
setTimeout 함수 내부의 this (0) | 2023.04.03 |
window.close (부모window, 자식window 닫기) (0) | 2023.01.11 |