javascript - Javascript - 如果小于 17,则添加额外的卡片/点数
问题描述
我正在尝试添加一个 if 语句,如果它小于 17,它将向dealerHand 添加另一张牌。
目前,它只是记录:
7
19
[ { suit: '♦', value: 9, points: 9 },
{ suit: '♠', value: 'K', points: 10 },
{ suit: '♥', value: 5, points: 5 } ]
无论如何,它都在添加第三个对象,并且积分没有被添加到总数中(19)。
let playerPoints = 0,
dealerPoints = 0;
for (let { points } of playerHand) {
playerPoints += points;
}
for (let { points } of dealerHand) {
dealerPoints += points
}
// console.log(playerPoints);
console.log(dealerPoints);
let = totalPoints;
if (dealerPoints < 17) {
dealerHand.push(dealRandomCard());
totalPoints += points
} else {
return
}
console.log(dealerHand);
现在,我们已经解决了 if 语句,仅当 2 张卡的总价值小于 17 时才添加一张卡,但我需要将第三张卡的积分添加到前两张卡的积分中。
9
[ { suit: '♦', value: 3, points: 3 },
{ suit: '♥', value: 6, points: 6 },
{ suit: '♠', value: 'A', points: 11 } ]
前两张牌加起来是 9,第三张牌应该是 20。
编辑
let totalPoints;
if (dealerPoints < 17) {
dealerHand.push(dealRandomCard());
totalPoints += points
} else {
return
}
let totalDealerHand = 0;
for (let card of dealerHand) {
totalDealerHand += card.points;
}
totalDealerHand = dealerHand.reduce(( total , amount ) => total +
amount);
// console.log(playerHand);
console.log(totalDealerHand);
解决方案
if (dealerPoints += points < 17)
您不能像这样使用+=运算符。我想你想测试的是
if (dealerPoints < 17)
推荐阅读
- c# - 检查 BIN 编号
- + 性能增强
- python - 训练集和测试集的准确率突然下降,损失突然上升,但慢慢恢复
- ios - 在 iOS 应用程序中连接后 Chromecast 未播放媒体
- python-3.x - Tweepy: tweepy.error.tweeperror 'code' 215 'message' 'bad authentication data.'
- python-3.x - 清理 Airflow Dags 的统计信息
- file-upload - Vimeo API:使用可恢复方式上传视频文件
- visual-studio-code - 更改快速选择器的悬停颜色
- regex - 如何使用 RegEx 捕获 VBA (Outlook) 中特定字符串之后的下一行?
- java - 如何在 Firestore 中使用 POJO 更新所有文档中的一个字段?
- c++ - Arduino - 关于数据类型