Javascript "Not equal to" 来自提示的特征
Javascript "Not equal to" feature from a prompt
我是 Javascript 的初学者,我只尝试使用非常基础的东西。我试图只允许将两个特定的词接受到变量提示中。如果输入了两个允许的单词以外的任何其他内容,我想显示一条消息,说明只允许使用这两个单词,然后重试直到正确为止。这是我目前正在使用的代码。一切正常,直到最后一节
console.log("Start of the program");
var letters = /^[a-zA-Z]*$/;
var number= prompt ("Which number between 1 and 30 do you want to translate?");
while (number <1) {
alert("Please type an integer number between 1 and 30");
var number= prompt ("Which number between 1 and 30 do you want to translate?");
}
while (number >30) {
alert("Please type an integer number between 1 and 30");
var number= prompt ("Which number between 1 and 30 do you want to translate?");
}
while (letters.test(number)) {
alert("Please use digits");
var number= prompt ("Which number between 1 and 30 do you want to translate?");
}
if (number => 1 && number <= 30) {
var lang= prompt ("Which language do you want to translate into, French or German?");
}
while(lang != "French" != "German") {
alert("Only French or German is allowed");
var lang= prompt ("Which language do you want to translate into, French or German?");
}
即使我输入“法语”或“德语”,我仍然会不断收到“只允许使用法语或德语”的警告。如果我将“while (lang !=)”更改为“if (lang !=)”,无论是否正确使用法语或德语,我都会收到一次警报,然后程序继续。我还希望它在当前使用此代码的结果中不区分大小写(接受法语、法语、法语等)
if (number == 1 && lang == "French") {
alert("The translation is " +frenchNumbers[1]);
如有任何帮助,我们将不胜感激
谢谢,布拉德
您在这里缺少 && lang
:
while(lang != "French" && lang != "German")
JavaScript(也不是我目前知道的任何其他语言)允许您像这样将变量与两个不同的值进行比较,而无需使用布尔运算符然后重复变量的名称。
有趣的是,lang != "French" != "German"
是有效的语法,但它并不代表您的想法。
首先 lang != "French"
被评估为 true
或 false
。那么接下来会发生的是:
true != "German"
或 false != "German"
...这两个都是正确的。
我是 Javascript 的初学者,我只尝试使用非常基础的东西。我试图只允许将两个特定的词接受到变量提示中。如果输入了两个允许的单词以外的任何其他内容,我想显示一条消息,说明只允许使用这两个单词,然后重试直到正确为止。这是我目前正在使用的代码。一切正常,直到最后一节
console.log("Start of the program");
var letters = /^[a-zA-Z]*$/;
var number= prompt ("Which number between 1 and 30 do you want to translate?");
while (number <1) {
alert("Please type an integer number between 1 and 30");
var number= prompt ("Which number between 1 and 30 do you want to translate?");
}
while (number >30) {
alert("Please type an integer number between 1 and 30");
var number= prompt ("Which number between 1 and 30 do you want to translate?");
}
while (letters.test(number)) {
alert("Please use digits");
var number= prompt ("Which number between 1 and 30 do you want to translate?");
}
if (number => 1 && number <= 30) {
var lang= prompt ("Which language do you want to translate into, French or German?");
}
while(lang != "French" != "German") {
alert("Only French or German is allowed");
var lang= prompt ("Which language do you want to translate into, French or German?");
}
即使我输入“法语”或“德语”,我仍然会不断收到“只允许使用法语或德语”的警告。如果我将“while (lang !=)”更改为“if (lang !=)”,无论是否正确使用法语或德语,我都会收到一次警报,然后程序继续。我还希望它在当前使用此代码的结果中不区分大小写(接受法语、法语、法语等)
if (number == 1 && lang == "French") {
alert("The translation is " +frenchNumbers[1]);
如有任何帮助,我们将不胜感激
谢谢,布拉德
您在这里缺少 && lang
:
while(lang != "French" && lang != "German")
JavaScript(也不是我目前知道的任何其他语言)允许您像这样将变量与两个不同的值进行比较,而无需使用布尔运算符然后重复变量的名称。
有趣的是,lang != "French" != "German"
是有效的语法,但它并不代表您的想法。
首先 lang != "French"
被评估为 true
或 false
。那么接下来会发生的是:
true != "German"
或 false != "German"
...这两个都是正确的。