JavaScript变量调用函数,但未定义

JavaScript变量调用函数,但未定义,javascript,Javascript,我对JavaScript非常陌生,正在尝试制作一个非常简单的“石头、布、剪刀”游戏,通过控制台进行游戏 完全正确 到目前为止的主要问题是,每一轮比赛都会导致平局(另一个问题是humanTurn()中的错误输入会导致进一步的错误,但这与我认为更紧迫的主题无关) 当分别调用humanTurn()和computerTurn()时,这两个gameRound()中调用时,这两个console.log()(第36行和第38行)似乎没有返回任何类型的值,在控制台中它们显示为tolocalueppercase(

我对JavaScript非常陌生,正在尝试制作一个非常简单的“石头、布、剪刀”游戏,通过控制台进行游戏

完全正确

到目前为止的主要问题是,每一轮比赛都会导致平局(另一个问题是
humanTurn()
中的错误输入会导致进一步的错误,但这与我认为更紧迫的主题无关)

当分别调用
humanTurn()
computerTurn()
时,这两个
gameRound()
中调用时,这两个
console.log()
(第36行和第38行)似乎没有返回任何类型的值,在控制台中它们显示为
tolocalueppercase(){[本机代码]}
。我试图寻找这可能意味着什么,到目前为止,我能得出的唯一结论是,两个变量,
AIChoice
HUChoice
中实际上没有存储任何值,我无法理解为什么会发生这种情况

非常感谢您的任何帮助

computerTurn().toLocaleUpperCase
userTurn().toLocaleUpperCase
都是函数,因为它们位于
字符串
原型上,所以它们都是相同的函数。如果你比较它们,它们总是相等的

您需要实际调用该函数才能获得所需的值:

let AIChoice = computerTurn().toLocaleUpperCase();
console.log(AIChoice);
let HUChoice = humanTurn().toLocaleUpperCase();
console.log(HUChoice);

哇,好悲伤,我完全错过了我没有真正打电话的事实。toLocaleUpperCase()正确地。。。。非常感谢。