Добавить объект в массив из конструктора - PullRequest
0 голосов
/ 29 мая 2018

В настоящее время я работаю над игрой-платформой, в которой будет много разных блоков, которые будут служить стенами и платформами.Чтобы узнать, пришел ли игрок в точку, где есть препятствие, я хотел бы пройтись по массиву всех блоков.

Конечно, я мог бы просто добавить объекты в массив после того, как я 'Мы создали их:

    var blockArray = [];
    var block1 = new Block();
    blockArray.push(block1);

Но давайте посмотрим правде в глаза, я ленив, и код становится немного загроможденным.Есть ли способ добавить объект в массив из конструктора, что-то вроде этого:

    var blockArray = [];        
    function Block () {
          blockArray.push(this.Block);
    }

, где this.Block означает вновь созданный объект.

Есть ли способ ссылаться на такой объект?

Заранее спасибо

1 Ответ

0 голосов
/ 29 мая 2018

Есть ли способ ссылаться на такой объект?

Да, это буквально this.

var blockArray = [];

function Block() {
  this.foo = 42;
  blockArray.push(this);
}

new Block();

console.log(blockArray);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...