如何在检测在输入框输入的内容等不等于数组的值,并且输出与数组相等的值的索引

来源:3-7 编程练习

hgu003

2020-06-06 23:52:41

var x=["草","家","日","英"]

var input=prompt("请输入");

for(var i=0;i<x.length;i++){

if(x[i]==input){

document.write(input.indexOf(x))

}

}


写回答

3回答

好帮手慕粉

2020-06-07

同学你好,indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果能找到这个字符串,则返回存在的位置,如果要检索的字符串值没有出现,则该方法返回 -1:

http://img.mukewang.com/climg/5edcc27f095a5df504380108.jpg

http://img.mukewang.com/climg/5edcc28f09fea36404490081.jpg

那么在这个代码里面:

http://img.mukewang.com/climg/5edcc2240973a13607660252.jpg

0

好帮手慕粉

2020-06-07

同学你好,可以实现的,参考如下:

http://img.mukewang.com/climg/5edc7dfe092b0cbf07650248.jpg

祝学习愉快~

0
hgu003
h 可以解释一下那句if条件的意思吗
h020-06-07
共1条回复

好帮手慕粉

2020-06-07

同学你好,同学这样的实现思路是不对的,用x[i] == input来判断是有局限性的,老师只能输入一个字,且这个字必须是数组中的其中一个:

http://img.mukewang.com/climg/5edc5f2c09a4a46505330072.jpg

这个式子才能成立。修改参考:

<script>
        //补充代码
        var input = prompt("请输入您要搜索的内容");
        for (var i = 0; i < input.length; i++) {
            if (input.charAt(i) === "草") {
                document.write("敏感字‘草’字在" + i + "位置被发现" + "<br/>");
            }
        }
        document.write("敏感字‘草’字首次出现的位置是" + input.indexOf("草"));
    </script>

如果我的回答帮助了你,欢迎采纳。祝学习愉快~

0
hgu003
h 我就是想检测我在input输入的一段文字有没有包含我数组里的敏感字,然后输出敏感字在第几位出现,这个不能实现嘛老师?
h020-06-07
共1条回复

0 学习 · 40143 问题

查看课程