Javascript 如何迭代对象中的特定键?
如何编写一个函数,该函数包含两个参数(数组Javascript 如何迭代对象中的特定键?,javascript,Javascript,如何编写一个函数,该函数包含两个参数(数组responses和字符串),对于isEssayQuestion为true,将字符串参数与响应键值进行比较,如果匹配任何值,则返回true;如果不匹配,则返回false const响应=[ { 问题:“染色体在有丝分裂中排列的阶段是什么?”, 答复:“中期”, 是正确的, 问题:错 }, { 问题:“什么样的解剖结构连接着胃和嘴?”, 回应:"食道",, 是正确的, 问题:错 }, { 问题:“什么是溶酶体?”, 回应:“溶酶体是一种膜结合的细胞器,存在
responses
和字符串
),对于isEssayQuestion
为true,将字符串
参数与响应
键值进行比较,如果匹配任何值,则返回true
;如果不匹配,则返回false
const响应=[
{
问题:“染色体在有丝分裂中排列的阶段是什么?”,
答复:“中期”,
是正确的,
问题:错
},
{
问题:“什么样的解剖结构连接着胃和嘴?”,
回应:"食道",,
是正确的,
问题:错
},
{
问题:“什么是溶酶体?”,
回应:“溶酶体是一种膜结合的细胞器,存在于许多动物细胞中。它们是球形囊泡,含有水解酶,可以分解多种生物分子。”,
是正确的,
问题:是吗
},
{
问题:“对还是错:前列腺素只能收缩血管。”,
回答:‘正确’,
I正确:错误,
问题:错
}
];
//范例
检查剽窃(回答,“含有水解酶的球形囊泡”);/>真的
检查是否有剽窃行为(回复,“此字符串不出现在回复中”);/>假的
//我的代码
抄袭功能检查(测试、应答键){
for(设i=0;i
您不需要迭代对象,因为给定的响应本身就是一个数组
除了return
语句之外,您所做的一切对我来说都很好。
因此,在字符串匹配逻辑的if
中添加return语句
function checkForPlagiarism(test, answerKey) {
for (let i = 0; i < test.length; i++) {
let question = test[i];
if (question.isEssayQuestion) {
let response = question.response;
if (response.includes(answerKey)) return true;
}
}
return false
}
抄袭功能检查(测试、应答键){
for(设i=0;i
您不需要迭代对象,因为给定的响应本身就是一个数组
除了return
语句之外,您所做的一切对我来说都很好。
因此,在字符串匹配逻辑的if
中添加return语句
function checkForPlagiarism(test, answerKey) {
for (let i = 0; i < test.length; i++) {
let question = test[i];
if (question.isEssayQuestion) {
let response = question.response;
if (response.includes(answerKey)) return true;
}
}
return false
}
抄袭功能检查(测试、应答键){
for(设i=0;i
您的代码已返回正确的值(如果找到匹配项,则返回true;如果未找到匹配项,则返回false),如果未找到匹配项,则只需在for循环后添加一个返回false(不带isEssayQuestion:true)。
对函数调用返回的值执行console.log()检查
示例:
log(检查剽窃(回答,“含有水解酶的球形囊泡”)
console.log(检查剽窃(响应,“此字符串不出现在响应中”)您的代码已返回正确的值(如果找到匹配项,则返回true;如果未找到匹配项,则返回false);如果未找到匹配项,则只需在for循环后添加一个返回false(没有isEssayQuestion:true)。 对函数调用返回的值执行console.log()检查 示例: log(检查剽窃(回答,“含有水解酶的球形囊泡”)
console.log(checkfor剽窃(响应,“此字符串不出现在响应中”)
const checkResponses=(resps,checkStr)=>resps.filter(r=>r.iseessayquestion)。一些(r=>r.response.includes(checkStr))
这是否回答了您的问题<代码>常量checkResponses=(resps,checkStr)=>resps.filter(r=>r.isEssayQuestion)。一些(r=>r.response.includes(checkStr))这是否回答了您的问题?谢谢。我知道当我返回response.includes(answerKey)
时,它只会返回true或false,而不是遍历整个响应列表。对吧?对。您的return
条件不是字符串匹配,而是isEssayQuestion
flag非常感谢。我知道当我返回response.includes(answerKey)
时,它只会返回true或false,而不是遍历整个响应列表。对吧?对。您的return
条件不是字符串匹配,而是isEssayQuestion
标志