var array = [1, 2, 3];
var nodes = document.querySelectorAll('div'); // NodeList [div, div, div, div, div, ...]
var els = document.body.children; // HTMLCollection [noscript, link, div, script, ...]
위 3가지 객체들은 []로 감싸져 있어서 배열처럼 보인다.
하지만 형태만 배열 처럼 보이는 유사배열이 있다.
Array.isArray(array); // true
Array.isArray(nodes); // false
Array.isArray(els); // false
array instanceof Array //true
nodes instanceof Array //false
els instanceof Array //false
직접 배열 리터럴로 생성한 객체만이 찐 배열이다.
유사배열은 forEach를 사용할 수 없다.
대신에 Array.from
을 통하여 가능해졌습니다.
Array.from(nodes).forEach((el) => { console.log(el) });
//div
//div
//...