gpt4 book ai didi

javascript - 强制 JavaScript 返回 false 以通过函数持久化

转载 作者:行者123 更新时间:2023-11-29 20:14:59 26 4
gpt4 key购买 nike

感谢您花时间审阅此问题。我一直试图解决一个问题一两个小时但没有成功...

我有一个网页,它根据函数的响应设置一个 JavaScript 变量:

grade = getScore(questionAnswer, userAnswer, questionType);

(userAnswer 是用户对问题的回答,从文本区域中检索)

这里是 getScore:

function getScore(questionAnswer, userAnswer, questionType) {

switch(questionType) {
case 'multiplechoice':
return scoreMC(questionAnswer, userAnswer);
break;

case 'usertypesanswer':
return scoreTA(questionAnswer, userAnswer);
break;

default:
return 0
}

}

scoreMC 和 scoreTA 的函数已经过全面测试并且运行良好。问题在于,如果用户的答案格式不正确,scoreMC 或 scoreTA 将返回 false。否则它返回值 score 和 msg。但是,当我根据 getScore 函数设置等级变量的值时,我得到的不是“等级”的“假”值,而是“未定义”。 (当用户响应正确验证时,我们没有问题。)

设置“等级”后,我尝试检查它是否有任何部分未定义:

if(typeof(grade.score) !== undefined)

我不明白为什么,但即使我在我的 Firebug 控制台中看到“未定义”,grade.score 也通过了这个检查...

有没有人看到我做错了什么?非常感谢你的协助。关于 JavaScript,我还有很多东西要学习。

最佳答案

if(typeof(grade.score) !== undefined)

可以

if(grade.score && grade.score !== false) // if I understand your question 

if(typeof(grade.score) !== "undefined")

typeof返回一个字符串

关于javascript - 强制 JavaScript 返回 false 以通过函数持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7536052/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com