【发布时间】:2021-10-03 01:57:27
【问题描述】:
我正在尝试解决查找单词是否为保留关键字的问题。不幸的是,我坚持下去。 调试它表明循环没有增加,但我不知道为什么?此外,看起来只有第 0 个索引与 strLowerCase 进行比较。为什么会这样?我很困惑。
问题陈述: 一种编程语言具有以下不能用作标识符的关键字: break、case、continue、default、defer、else、for、func、goto、if、map、range、return、struct、type、var
编写一个程序来判断给定的单词是否是关键字
function wordIsTheKey(str) {
let strLowerCase = str.toLowerCase();
const keywords = [
"break",
"case",
"continue",
"default",
"defer",
"else",
"for",
"func",
"goto",
"if",
"map",
"range",
"return",
"struct",
"type",
"var",
];
keywordsLength = keywords.length;
for (let i = 0; i < keywordsLength; i++) {
if (keywords[i] == strLowerCase) {
return `${str} is a keyword`;
} else {
return `${str} is not a keyword`;
}
}
}
console.log(wordIsTheKey("defer"));
console.log(wordIsTheKey("While"));
【问题讨论】:
-
你正在使用
return打破循环。 -
只是一个快捷方式
keywords.includes(strLowerCase)
标签: javascript arrays