Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
For循环javascript未指定正确的值_Javascript - Fatal编程技术网

For循环javascript未指定正确的值

For循环javascript未指定正确的值,javascript,Javascript,我正在创建一个循环,查找类中包含字符“L”的所有元素,并对每个元素执行innerHTML命令。在我实际执行I.innerHTML=''之前,这个循环似乎工作得很好,其中I是L字符串的数组。为什么我不能这样做?如果我做一个console.log(I);在if语句中,我得到了正确的数组 letts = document.getElementsByClassName('span2'); for(i in letts){ if(i.indexOf('L') !== -1){

我正在创建一个循环,查找类中包含字符“L”的所有元素,并对每个元素执行innerHTML命令。在我实际执行I.innerHTML=''之前,这个循环似乎工作得很好,其中I是L字符串的数组。为什么我不能这样做?如果我做一个console.log(I);在if语句中,我得到了正确的数组

letts = document.getElementsByClassName('span2');
for(i in letts){
        if(i.indexOf('L') !== -1){
                i.innerHTML = '';
        }
}
你做错了

i
in
for。。在
中,循环引用对象属性名称。最好使用简单的
for
循环来迭代
NodeList
集合(作为数组),如下所述

var letts = document.getElementsByClassName("span2");
for (var i = 0, len = letts.length; i < len; i++) {
    if (letts[i].innerHTML.indexOf("L") > -1) {
        letts[i].innerHTML = "";
    }
}
var letts=document.getElementsByClassName(“span2”);
对于(变量i=0,len=letts.length;i-1){
letts[i].innerHTML=“”;
}
}
你做错了

i
in
for。。在
中,循环引用对象属性名称。最好使用简单的
for
循环来迭代
NodeList
集合(作为数组),如下所述

var letts = document.getElementsByClassName("span2");
for (var i = 0, len = letts.length; i < len; i++) {
    if (letts[i].innerHTML.indexOf("L") > -1) {
        letts[i].innerHTML = "";
    }
}
var letts=document.getElementsByClassName(“span2”);
对于(变量i=0,len=letts.length;i-1){
letts[i].innerHTML=“”;
}
}

您的
i
in for--in循环指的是
索引(基于0)。你应该使用

for(i in letts){
        if(letts[i].indexOf('L') !== -1){
   ...

for(变量i=0,i
您的
i
in for--in循环指的是
索引(基于0)。您应该使用

for(i in letts){
        if(letts[i].indexOf('L') !== -1){
   ...

for(变量i=0,i
foreach
循环在这种情况下非常方便

数组有一个
forEach
方法,但由于某些原因,
NodeList
s没有。您可以使用以下方法之一:

  • 下划线.js的功能
  • JQuery(或几乎任何框架)的功能
  • 或者
    [].forEach.call()

foreach
循环在这种情况下非常方便

数组有一个
forEach
方法,但由于某些原因,
NodeList
s没有。您可以使用以下方法之一:

  • 下划线.js的功能
  • JQuery(或几乎任何框架)的功能
  • 或者
    [].forEach.call()