const { log } = console;
let n = 3;
// ⭐️ Array(n) does NOT set integer properties❗️
let emptyArray = Array(n); // only set {length: n}
log(Object.keys(emptyArray)); // []
// ⭐️ Array(n).fill() DOES set integer properties❗️
let filledArray = Array(n).fill(); // {0:undefined, 1:undefined, ...}
log(Object.keys(filledArray)); // [ '0', '1', '2' ]
// ⭐ map over INTEGER properties❗️️ (⭐️ no integer to map over)
let a1 = emptyArray.map((_, i) => i); // [ <3 empty items> ]
log(a1, a1.length); // ⭐️ `length` is kept by map
// ⭐ map over INTEGER properties❗
let a2 = filledArray.map((_, i) => i); // [ 0, 1, 2 ]
log(a2);