Javascript 我不知道';我不知道如何修复我的成绩计算器功能
我只是不知道我做错了什么,让未定义的答案记录到我的控制台 我尝试删除&&子句,但这似乎没有任何帮助;事实上,这让情况变得更糟Javascript 我不知道';我不知道如何修复我的成绩计算器功能,javascript,function,Javascript,Function,我只是不知道我做错了什么,让未定义的答案记录到我的控制台 我尝试删除&&子句,但这似乎没有任何帮助;事实上,这让情况变得更糟 function gradeCalculator(grade) { if (grade >= 90) { console.log ("A"); } else if (grade >= 80 && grade <= 89) { console.log ("B"); } else if (grade >=
function gradeCalculator(grade) {
if (grade >= 90) {
console.log ("A");
} else if (grade >= 80 && grade <= 89) {
console.log ("B");
} else if (grade >= 70 && grade <= 79) {
console.log ("C");
} else if (grade >= 60 && grade <= 69) {
console.log ("D");
} else (grade <= 59)
console.log ("F");
}
console.log(gradeCalculator(92)); //=> "A"
console.log(gradeCalculator(84)); //=> "B"
console.log(gradeCalculator(70)); //=> "C"
console.log(gradeCalculator(61)); //=> "D"
console.log(gradeCalculator(43)); //=> "F"
函数等级计算器(等级){
如果(等级>=90){
console.log(“A”);
}否则,如果(等级>=80&&grade=70&&grade=60&&grade“B”
console.log(成绩计算器(70));//=>“C”
console.log(成绩计算器(61));//=>“D”
console.log(成绩计算器(43));//=>“F”
我希望输出以如下方式登录到控制台:
“A”
“B”
“C”
“D”
“F”
但事实证明:
“A”
“F”
未定义
“B”
“F”
未定义
“C”
“F”
未定义
“D”
“F”
未定义
“F”
未定义
我非常感谢您的帮助,非常感谢!=)函数等级计算器(等级){
如果(等级>=90){
控制台日志(“A”);
}否则,如果(等级>=80&&grade=70&&grade=60&&grade“A”
成绩计算器(84);//=>“B”
成绩计算器(70);//=>“C”
成绩计算器(61);//=>“D”
成绩计算器(43);//=>“F”
问题是:
-函数没有返回任何内容,因此您正在else(等级“A”
”中输入未定义的值(因为日志记录在函数本身中)console.log
功能等级计算器(等级){
如果(等级>=90){
console.log(“A”);
}else如果(grade>=80&&grade=70&&grade=60&&grade您希望返回函数中的值,而不是控制台中的值。记录它们。您有两个主要问题:您的最后一个else
案例不应该有条件(else{…}
而不是else(grade>只是为了解释输出)(忽略else
问题):console.log(gradeCalculator(92));//=>“A”
将首先调用gradeCalculator(92)
。这将记录一个A。接下来,函数结束时不返回任何内容,因此返回值最终为未定义的
。这意味着原始语句现在变成控制台.log(未定义);//=>“A”
,其中记录了未定义的文本,
。理解函数返回值和记录值之间的区别非常重要。谢谢Mike Cluck、@Chris G和jmoerdyk!你的回答非常好,帮助我修复了代码!我刚开始学习JavaScript,所以我还不太擅长,我很感激输入非常多!=)希望分数不是89.5谢谢@epascarello提供的信息,我已经更改了代码以反映这一点=)
function gradeCalculator(grade) {
if (grade >= 90) {
console.log ("A");
} else if (grade >= 80 && grade <= 89) {
console.log ("B");
} else if (grade >= 70 && grade <= 79) {
console.log ("C");
} else if (grade >= 60 && grade <= 69) {
console.log ("D");
} else if(grade <= 59){
console.log ("F");
}
}