Проблема с extends Array и splice

267
11 июня 2017, 20:07

Столкнулся с такой проблемой. Есть класс extends Array, который надо очистить.

class Grid extends Array { 
    constructor(board){ 
        super(); 
        // условное содержимое -  
        this.push([{x:0,y:0}][{x:0,y:1}],[{x:1,y:0}][{x:1,y:1}]); 
        console.log('grid constructed'); 
        this.ctx = board.layers.grid; //очень нужная вещь без которой ничего не работает 
    } 
    clear(){ 
        this.splice(0, this.length); 
    } 
} 
const grid = new Grid({layers:{grid:'2d)'}}); 
 
grid.clear();// oops..

Что можно предпринять?

Answer 1

Кажется, что метод .splice всегда вызывает конструктор "под капотом".

Можно очистить grid другим образом:

clear(){
    this.length = 0;
}
READ ALSO
Преобразование массива в в JSON

Преобразование массива в в JSON

Задача: собрать элементы на странице и сделать массив или точнее JSON в виде

332
Чем отличаются два этих способа ловли ошибок?

Чем отличаются два этих способа ловли ошибок?

По-моему это ведь одно и тоже, только во втором случае используется нестандартный синтаксис

336
JS - Приложение

JS - Приложение

Всем доброго времени сутокВ backbone js есть возможность структурировать вид

374
Вызов функции при загрузке

Вызов функции при загрузке

Есть некая функция, точнее часть об общего скрипта, вызываемая при нажатии:

407