JavaScript-在数组中查找元素,并从用户提示中处理null
JavaScript - Lookup element in array and handle nulls from user prompt
我是JavaScript的新手,我正在做这个颜色猜测游戏作为一项任务。我的剧本在下面。我尝试了很多我能想到的不同方式,但我就是无法做到。
总之,我有两个问题。
- 如何检查用户键入的值是否存在于数组中
- 如果用户在没有值的情况下单击"确定",我如何确保排除空值?在此处输入代码
脚本在下面。如果你运行该程序,它将显示用户猜测的答案(仅用于测试)。如果用户猜测正确,则页面颜色将为该颜色。任何帮助都将不胜感激。
<DOCTYPE! HTML>
<HTML>
<HEAD>
<TITLE>Color Guessing Game</TITLE>
</HEAD>
<body onload="do_game()">
<script type="text/javascript">
var target;
var target_index;
var guess_input;
var finished = false;
var guess_input_text;
var guesses = 0
var color= ["Blue","Coral","Cyan","Fuchsia","Gold","Lavender","Lime","Red","Tan"];
var myBody=document.getElementsByTagName("body")[0];
var check_color = colors.indexOf(guess_input);
function do_game(){
var random_number_integer = colors[Math.floor(Math.random() * colors.length-1)];
target = random_number_integer;
alert(target);
while (!finished) {
guess_input_text = prompt("I am thinking of one these colors: 'n'n'n" +
colors.toString() +
"'n'n'n What color am I thinkning of?");
guess_input = guess_input_text;
guesses += 1;
finsihed = check_guess();
}
}
function check_guess() {
if (guess_input == null){
alert("Type in a color.");
return false;
}
if (guess_input > target){
alert("Your input is alphabetically lower than mine!" +
"'n'nPlease Try Again.'n'n");
return false;
}
if (guess_input < target){
alert("Your input is alphabetically higher than mine!" +
"'n'nPlease Try Again.'n'n");
return false;
}
alert("Yes!!!, the correct color was: " + target +
"'n'n'n The Number of guesses:" + guesses +
"'n'n'nGood Job'n'n'n");
myBody.style.background=guess_input;
return true;
}
</script>
</body>
</HTML>
答案1:使用indexOf:(文档)
答案2:https://stackoverflow.com/a/20533178/3603806
// check whether the array or string empty
function is_empty(obj){
if (obj == null || (obj == '' && obj.length == 0)){
return true;
}
else {
return false;
}
}
// check whether this elem is included in arr
function is_included(elem, arr){
if (is_empty(arr) || is_empty(elem) || arr.toString().indexOf(elem) == -1){
return false;
}
else {
return true;
}
}
相关文章:
- 如何强制用户在javascript提示中输入值
- 在不使用javascript的情况下,可以在表单字段中设置文本占位符(以提示最终用户插入特定格式)
- 提示用户通过AJAX调用保存文件
- 如何在将鼠标悬停在提交/锚点上时检查复选框是否已选中,并显示提示用户这样做的警报
- 适用于年轻用户的 Javascript 提示框的替代方案
- JavaScript-在数组中查找元素,并从用户提示中处理null
- node-webkit:将数据导出到csv并提示用户保存文件
- 如何创建一个提示用户输入登录id和密码的网站
- 强制用户在JavaScript提示框中输入值
- 使用数据URI提示用户保存文件
- 不断提示用户一个数字,直到它落入某个范围
- 得到“;NS_ERROR_NOT_AVAILABLE:提示被用户中止“;在javascript中
- 当用户离开图表区域时,删除同步图表中的工具提示
- 当用户在提示框中输入IP地址时,如何将IP地址存储到变量
- Jquery:在一个字符串中查找所有实例模式,提示用户替换模式的所有实例,然后进行替换
- 通过用户提示查找数字的阶乘
- 如何向用户提示文本框输入
- Javascript将数据保存到文件系统(使用用户提示)
- 如何将用户提示(输入)存储到数组中并检索它's的最大值和最小值
- 如何在用户提示时创建新网页