Javascript - 如何在函数中使用变量

标签 javascript string function variables

我是一名新手,正在尝试构建德州扑克扑克游戏进行练习。为简单起见,假设我有 4 名玩家,我们处于第 4 轮/游戏,因此我的庄家筹码将位于玩家 4 处。另外,为了简单起见,我们开始在 DealerChip(即玩家 4)处进行交易。

var numberPlayers = 4;
var gameNumber = 4
var deck = ["1","3","4","2"]
var player4 = [];
var dealerChip = "player0";

if (gameNumber <= numberPlayers) {
    dealerChip = "player" + gameNumber;
}
else {
    var val = Math.floor((gameNumber-1) / numberPlayers);
    dealerChip = "player" + gameNumber - numberPlayers * val;
};

function deal(toWhere) {
    toWhere.push(deck[deck.length-1]);
    deck.pop();
}

这是我的问题 - 当我尝试直接在 player4 上使用 deal 函数 (deal(player4);) 时,它工作正常。

但是当我在dealerChip上使用deal函数(deal(dealerChip);)时,它等于player4,它不起作用。

是不是因为dealerChip变量实际上是一个字符串?我该如何改变这个?抱歉,如果问题重复 - 我太新手了,甚至不知道要搜索什么...

最佳答案

这是我认为您正在尝试做的一个示例。您需要利用javascript's bracket notation .

//place properties into object.
var obj = {
    numberPlayers: 4,
    gameNumber: 4,
    deck: ["1","3","4","2"],
    player4: [],
    dealerChip: "player0"
};

function deal(toWhere) {
    toWhere.push(obj.deck[obj.deck.length-1]);
    obj.deck.pop();
}

obj.dealerChip = "player4";

//now, to call deal()

//what you do and works because player4 is an array
deal(obj.player4); 
//what you want to do; this access the property in the obj 
//that has a name equal to the value of dealerChip. 
//In this case, dealerChip has the value of "player4".
deal(obj[obj.dealerChip]); 
//Therefore, it can be rewritten as:
deal(obj["player4"]); 
//which can also be rewritten as:
deal(obj.player4);
//which is the same as the original you attempted

关于Javascript - 如何在函数中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40564943/

相关文章:

javascript - 悬停时显示框是 "transparent"?

javascript - 使用 JSInterop 将对象传递给 JavaScript 结果为空对象

javascript - 如何从被调用函数获得响应?

regex - 如何编写验证字母数字和空格的正则表达式

javascript - JavaScript 中的美化函数

javascript - React中静态网站页面刷新错误

javascript - 我如何以 Angular 将数据从一条路线传输到另一条路线?

java - 如何将 !.equals 与字符串一起使用?

string - 使用 .NET 3.5 查找字符串中的第一个数字

python - yield 在 python 2.7 中有什么作用?