【发布时间】:2019-01-25 20:42:12
【问题描述】:
我试图从用户那里获取一个数字,将数字显示为一个范围,然后用字符串替换数字 3 的实例,用字符串替换数字 2 的实例,以及数字 1 的实例用字符串。如果函数检测到 3,我希望它用字符串替换它,删除 3 的实例,并忽略替换 2 和 1 的条件。当它看到 2(但不是 2)时也是如此。
我有函数从用户那里获取数字,将其转换为字符串,然后使用 for 循环将其显示为范围。
在 for 循环中,我使用 .includes 来查找“3”。当它看到一个时,它会将字符串“I'm sorry Dave, I can't do that”推送到显示范围的同一列表中。
我已尝试使用 if/else if 语句让循环在第一次看到 3 时忽略 2 和 1 的条件,但是它将所有条件应用于 3,2 或 1 的所有实例。
function numTranslate(inputNumber){
var numList = [];
var num = inputNumber
for (i = 0; i<= num; i++){
var numString = i.toString();
if (numString.includes('3')) {
numList.push("I'm sorry Dave, I can't do that")
}
else if (numString.includes('2')) {
numList.push("boop!")
}
else if (numString.includes('1')) {
numList.push("beep!")
}
numList.push(i)
}
return numList;
}
我得到了什么
输入:9
输出:0,beep!,1,boop!,2,对不起 Dave,我做不到,3,4,5,6,7,8,9,
我想要什么:
输入:9
输出:1,2,对不起,戴夫,我做不到,4、5、6、7、8、9
【问题讨论】:
-
您好,欢迎来到 StackOverflow。请花一些时间阅读帮助页面,尤其是名为"What topics can I ask about here?" 和"What types of questions should I avoid asking?" 的部分。更重要的是,请阅读the Stack Overflow question checklist。您可能还想了解Minimal, Complete, and Verifiable Examples。
-
如果你想打印 1 和 2 为什么你有一个 if 子句呢?
标签: javascript