Javascript Java脚本无法识别所有变量
嗨,我刚开始学习JS,这里发生的一些事情对我来说还是有点神秘。我的问题是为什么我的代码resultMarcin中的第三个变量在我的简单代码行中没有被考虑Javascript Java脚本无法识别所有变量,javascript,variables,if-statement,Javascript,Variables,If Statement,嗨,我刚开始学习JS,这里发生的一些事情对我来说还是有点神秘。我的问题是为什么我的代码resultMarcin中的第三个变量在我的简单代码行中没有被考虑 var ageMike = 25; var ageTom = 30; var ageMarcin = 90; var heightMike = 178 * 5; var heightTom = 150 * 5; var heightMarcin = 210 * 5; var resultMike = ageMike + heightMike
var ageMike = 25;
var ageTom = 30;
var ageMarcin = 90;
var heightMike = 178 * 5;
var heightTom = 150 * 5;
var heightMarcin = 210 * 5;
var resultMike = ageMike + heightMike;
var resultTom = ageTom + heightTom;
var resultMarcin = ageMarcin + heightMarcin;
if (resultMike > resultTom && resultMarcin) {
alert('Mike wins with score ' + resultMike);
} else if (resultTom > resultMike && resultMarcin) {
alert('Tom wins with score' + resultTom);
} else if (resultMarcin > resultMike && resultTom) {
alert('Marcin wins with score' + resultMarcin);
} else if (resultMike === resultTom && resultMarcin) {
alert("It's a tie");
}
我认为你的问题是如果陈述
if (resultMike > resultTom && resultMarcin) {
应该是
if (resultMike > resultTom && resultMike > resultMarcin) {
因为resultMarcin
在JavaScript中是truthy
。如果值大于0,则只会给出true
,因此您的If语句会说:
if (resultMike > resultTom && true)
也就是说,if的第二部分总是正确的,所以实际上它只检查第一个mive和tom
以下是关于它的更多信息:
我认为你的问题在于if语句
if (resultMike > resultTom && resultMarcin) {
应该是
if (resultMike > resultTom && resultMike > resultMarcin) {
因为resultMarcin
在JavaScript中是truthy
。如果值大于0,则只会给出true
,因此您的If语句会说:
if (resultMike > resultTom && true)
也就是说,if的第二部分总是正确的,所以实际上它只检查第一个mive和tom
以下是关于它的更多信息:
你说的“不被考虑”是什么意思?你得到的错误是什么?你只是在检查resultMarcin是否为
true
或false
我想你应该做如果(resultMike>resultTom&&resultMike>resultMarcin){/*你的警报*/}
,现在它检查resultMike是否大于resultTom,resultMarcin是否为真值。你的意思是什么“未被考虑”?您得到的错误是什么?您只是在检查resultMarcin是否为true
或false
我想您应该执行如果(resultMike>resultTom&&resultMike>resultMarcin){/*您的警报*/}
,因为现在它检查resultMike是否大于resultTom,以及resultMarcin是否为真实值。