尝试用Java脚本制作石头剪刀布游戏



当我在其中运行时出现此错误[未捕获的类型错误:rpsdatabase不是一个函数]

输出应该类似于 [0,1],这意味着人类选择岩石,机器人选择纸张 我将两个之间的错误行留空以轻松找到它

function rpsGame(yourChoice){
console.log(yourChoice);
var humanChoice, botChoice;
humanChoice = yourChoice.id;
botChoice = numbertochoice(randombot());
console.log('computer choice: ', botChoice)
results = Winner(humanChoice, botChoice)
//messege = finaleMessege(results);
//rpsfrontend(yourChoice.id, botChoice, messege);
}
function randombot() {        
return Math.floor(Math.random() * 3)
}
function numbertochoice(number){
return ['rock', 'paper', 'scissors'][number]
}
function Winner(humanChoice, botChoice){
var rpsdatabase = {        
'rock': {'scissors': 1, 'paper': 0,'rock': 0.5 },
'paper': {'rock': 1, 'scissors':0, 'paper': 0.5},
'scissors': {'paper': 1, 'rock':0, 'scissors': 0.5},
};
var yourScore = rpsdatabase(humanChoice)(botChoice);
var botScore = rpsdatabase(humanChoice)(yourChoice);
return (yourScore, botScore);

不要使用括号来访问对象。像这样做

var yourScore = rpsdatabase[humanChoice][botChoice];
var botScore = rpsdatabase[humanChoice][yourChoice];

最新更新