Как я могу получить имя всех новых объектов, созданных из конструктора функции? - PullRequest
0 голосов
/ 07 октября 2019

Я работаю над проектом javaScript, создаю пошаговую игру и создал конструктор функций для игроков.

Я добавил класс CSS для каждого игрока с одинаковыми именами игроков.

Ниже я добавил свой код js:

function Player(name, image) {
    this.name = name;
    this.image = image;
}

var player1 = new Player("kakashi", "ninja.png");
var player2 = new Player("mightyGuy", "samurai.png");

function checkClass() {
        $.each(classList, function(index, cssClass) {
            if (
                cssClass === "wall" ||
                cssClass === "kakashi" ||
                cssClass === "mightyGuy"
            ) {
                blocked = true;
            }
        });
    }

Как я могу получить всеновый player.name, созданный из этого конструктора, чтобы проверить, имеет ли определенный divCell какой-либо класс player.name ??

Так что вместо записи cssClass === "Какаши" ||cssClass === "mightyGuy"

Я бы просто написал его один раз, и автоматически он проверит все классы css по Player.name.

Обновите вопрос: так я и получаюиспользуя в своем коде:

function Player(name, image) {
    this.name = name;
    this.image = image;
}

var player1 = new Player("kakashi", "ninja.png");
var player2 = new Player("mightyGuy", "samurai.png");

function checkClass() {
    $.each(classList, function(index, cssClass) {
        if (
            cssClass === "wall" ||
            cssClass == passivePlayer.name
        ) {
            blocked = true;
        }
    });
}

Я использовал этот способ, потому что мне не нужно писать имя игрока, используя var passivePlayer (это может быть любой игрок, кроме activePlayer)

1 Ответ

0 голосов
/ 07 октября 2019

вы можете добавить классы к объекту и проверить, существуют ли они.

function Player(name, image) {
    this.name = name;
    this.image = image;
}

var player1 = new Player("kakashi", "ninja.png");
var player2 = new Player("mightyGuy", "samurai.png");
function checkClass() {
    const checkList = {
        wall: true,
        kakashi: true,
        mightyGuy: true
    }

    $.each(classList, function (index, cssClass) {
        if (checkList[cssClass]) {
            blocked = true;
        }
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...