亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

javascript從數組中讀取對象

javascript從數組中讀取對象

慕容森 2022-10-08 16:05:25
我如何讀取列表中的玩家姓名?let Players = []let Player = {    sprite: 1,    coords: {M: 0, X: 0, Y: 0},    name: ""}function LoadPlayers(){console.log("total players: " + Players.length)let player1 = Playerplayer1.sprite = 0player1.coords = {M: 0, X: 6, Y: 1};player1.name = "jimpie"Players.push([player1]);let player2 = Player         player2.sprite = 0player2.coords =  {M: 0, X: 1, Y: 17};player2.name = "kolien"Players.push([player2]);console.log("total players: " + Players.length)console.log("Player 1 name: " + Players[1].name)console.log("Player 2 name: " + Players[0].name)}我現在得到“未定義”,我想從列表中的特定玩家讀出玩家詳細信息。
查看完整描述

3 回答

?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

你有不同的錯誤。

首先,您必須使用new Player()而不僅僅是player.

其次,你應該使用這個:

Players.push(player1);

而不是這個:

Players.push([player1]);

第一個將 player1 推送到 Players 數組,第二個將僅包含 player1 的新數組推送到數組 Players。您還必須使用它來添加 player2。


查看完整回答
反對 回復 2022-10-08
?
FFIVE

TA貢獻1797條經驗 獲得超6個贊

這是因為您沒有Player正確創建一個。而不是使用let player1 = Player,使用let player1 = new Player()。此外,您需要創建一個Players數組。最后,你需要Player上課。


class Player {

  constructor(sprite, coords, name) {

    this.sprite = sprite;

    this.coords = coords;

    this.name = name;

  }

}

var Players = []; // If you want to access this array

// from outside thefunction, keep it here. 

// Otherwise, move it in the LoadPlayers function


function LoadPlayers() {


  let player1 = new Player(0, {

    M: 0,

    X: 6,

    Y: 1

  }, "jimpie");


  Players.push(player1);




  let player2 = new Player(0, {

    M: 0,

    X: 1,

    Y: 17

  }, "kolien")


  Players.push(player2);


  console.log("total players: " + Players.length)


  console.log("Player 1 name: " + Players[0].name)

  console.log("Player 2 name: " + Players[1].name)

}


LoadPlayers();


查看完整回答
反對 回復 2022-10-08
?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

function Player(sprite, coords, name){

    this.sprite = sprite;

    this.coords = coords;

    this.name = name;

}


let Players = []


function LoadPlayers(){


console.log("total players: " + Players.length)


let player1 = new Player(1, [32, 15, 14], "jimpie")


Players.push(player1);




let player2 = new Player(1, (1, 1, 1), "kolien")


Players.push(player2);


console.log("total players: " + Players.length)


console.log("Player 1 name: " + Players[0].coords)

console.log("Player 2 name: " + Players[1].name)


var allcoords = Players[0].coords

var xcoord = allcoords[1]

var ycoord = allcoords[2]

var mapnum = allcoords[0]


console.log("map: " + mapnum + " x: " + xcoord + " y: " + ycoord);


}

這很好用!


查看完整回答
反對 回復 2022-10-08
  • 3 回答
  • 0 關注
  • 207 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號