Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按用户名从播放器类中选择某些用户?_Javascript_Jquery_Class - Fatal编程技术网

Javascript 按用户名从播放器类中选择某些用户?

Javascript 按用户名从播放器类中选择某些用户?,javascript,jquery,class,Javascript,Jquery,Class,在我的代码中,我希望能够通过 a) 。使用createPlayer(“Test”)创建用户,然后可以使用Game.Player.Test调用该用户,这样我就可以使用console.log(Game.Player.Test.name)记录他们的姓名等 这就是我到目前为止所遇到的问题,我的问题几乎是findPlayer下面的所有内容,它返回的是未定义的 var User = 'iJava'; var Players = []; function Gam

在我的代码中,我希望能够通过 a) 。使用
createPlayer(“Test”)
创建用户,然后可以使用
Game.Player.Test
调用该用户,这样我就可以使用
console.log(Game.Player.Test.name)
记录他们的姓名等

这就是我到目前为止所遇到的问题,我的问题几乎是
findPlayer
下面的所有内容,它返回的是未定义的

        var User = 'iJava';
        var Players = [];
        function Game(Object, Name) { 
            this.Type = Object
            this.Name = Name;
        }
        function Player(Username) {
            this.Name = Username            
            this.getInfo = new Game("Player", this.Name)
            this.Type = this.getInfo.Type
            this.Move = function() { console.log("Moved",this.Name) }
        }
        function createPlayer(Username) {
            if ($.inArray(Username, Players) == -1) {
                new Game.newPlayer(Username)
                Players.push(Username);
                console.log("Created user "+Username+"!");
            }
            else {
                console.log("The user "+Username+" already exists!");
            }
        }
        function findPlayer(Username) {
            return Game.getPlayer.Username;
        }
        Game.getPlayer = Player;
        Game.newPlayer = Player
        Game.Player = function(name) { findPlayer(name) };
        createPlayer(User);

你可以用这样的东西

var Game = {Players: []};

Game.Player = function Player (name) {
    if (this.constructor[name])
        throw new Error("A player with this name already exists");

    // Store player on constructor for fast access, as well as in
    // Game.Players array to easily iterate over all players. 
    Game.Players.push(this.constructor[name] = this);
    this.Name = name;
}
// Use prototype to define object methods only once
Game.Player.prototype.Move = function () {
    console.log("Moving player: '" + this.Name + "'");
}

new Game.Player("MyPlayer");
console.log(Game.Player.MyPlayer);