Ответ 1
Вы можете использовать Array.from
, который генерирует массив из массива, подобного объекту.
this.products = Array.from(document.querySelectorAll('.product'));
В другом опубликованном вопросе это было там:
var a = {};
a.products = [...document.querySelectorAll('.product')];
console.log(a.products);
<div class="product"> </div>
Вы можете использовать Array.from
, который генерирует массив из массива, подобного объекту.
this.products = Array.from(document.querySelectorAll('.product'));
Хорошо, похоже, что Bergi и Felix находятся на правильном пути: в этом документе на MDN они говорят об итераторах.
Некоторые встроенные конструкции, такие как оператор распространения, используют один и тот же протокол итераций под капотом:
Итак, где Array имеет entries()
a nodelist
в Edge не поддерживает и не поддерживает итерацию.
Ответ Нины - это первый!