简单Javascript不';我什么也不退
我正在努力学习一些Javascript。我写了这段代码,它应该返回a、b、c、d,如果字母a在var字母中,它应该警告消息“Yes it is true”简单Javascript不';我什么也不退,javascript,Javascript,我正在努力学习一些Javascript。我写了这段代码,它应该返回a、b、c、d,如果字母a在var字母中,它应该警告消息“Yes it is true”当我运行代码时,它不会返回任何信息 有人知道为什么吗 <script type="text/javascript"> var letters = ["a", "b", "c", "d"] var numbers = ["one", "two", "three", "four"] for(x=0; x &l
当我运行代码时,它不会返回任何信息 有人知道为什么吗
<script type="text/javascript">
var letters = ["a", "b", "c", "d"]
var numbers = ["one", "two", "three", "four"]
for(x=0; x < letters.length; x++) {
document.write(letters);
if(a in letters) {
document.write("Yes it is true");
}
}
</script>
变量字母=[“a”、“b”、“c”、“d”]
变量数=[“一”、“二”、“三”、“四”]
对于(x=0;x
a是一个您尚未定义的变量,请不要与a“(字符串)混淆
字母是数组x是您正在迭代的数组中的索引字母[x]是索引为x的特定元素
因此,您可以执行“a”==字母[x]比较来修复代码
作为旁注,我可以建议一个更好的方法来解决你的问题
您试图通过迭代整个列表并比较元素来解决这个问题。如果您想学习迭代之类的概念,这是可以的,但是在本例中,使用字符串对象中的inbuild方法可以更轻松地完成这项工作
<script type="text/javascript">
var letters = ["a", "b", "c", "d"]
var numbers = ["one", "two", "three", "four"]
if(letters.indexOf("a") >= 0) {
document.write("Yes it is true");
}
</script>
变量字母=[“a”、“b”、“c”、“d”]
变量数=[“一”、“二”、“三”、“四”]
如果(字母indexOf(“a”)>=0){
文件。写下(“是的,这是真的”);
}
indexOf返回作为参数传递的元素数组中的索引,如果它不在数组中,则返回-1。因此,如果该数字大于或等于零,则表示该元素存在于数组中。请查看此代码,它是
字母的元素
<script type="text/javascript">
var letters = ["a", "b", "c", "d"]
var numbers = ["one", "two", "three", "four"]
for(x=0; x < letters.length; x++) {
document.write(letters);
if(letters[x]=='a') {
document.write("Yes it is true");
}
}
</script>
变量字母=[“a”、“b”、“c”、“d”]
变量数=[“一”、“二”、“三”、“四”]
对于(x=0;x
您还没有定义任何名为a的变量。您应该使用“a”来登记您的电子邮件答案:
for(x=0; x < letters.length; x++) {
document.write(letters + "<br/>");
if(a = letters) {
document.write("Yes it is true" + "<br/>");
}
}
for(x=0;x ”);
如果(a=字母){
写下“是的,这是真的”+“
”;
}
}
打印输出:
a、 b、c、d
是的,这是真的
a、 b、c、d
是的,这是真的
a、 b、c、d
是的,这是真的
a、 b、c、d
是的,这是正确的而不是字母中的a,您应该使用letters.indexOf('a')>-1
。有什么区别
首先,a
本身就是一个变量。您尚未定义此变量。其次,
中的不搜索值,只搜索键。此数组的键为0,1,2,3<另一方面,code>indexOf
,则执行搜索值
此外,您不需要为此循环使用。您可以通过其索引访问每个元素
if(letters[index]=='a') {
document.write("Yes it is true");
}
可以使用letters.indexOf(a)代替for循环,它将返回数组“letters”中变量“a”的索引(如果未找到,则返回-1)。但在此之前,您需要定义变量“a”
如果您真的想保持for循环,您应该这样使用它:
var a="a";
for(x=0; x < letters.length; x++) {
document.write(letters);
if(letters[x]==a) {
document.write("Yes it is true");
}
var a=“a”;
对于(x=0;x
ah没有看到您的评论:-)谢谢,无论如何,在
中使用是错误的方法。在
中检查键。查看我的答案。您正在设置变量,而不是比较字符串。