Javascript 未捕获类型错误:无法读取属性';指数';for循环中未定义的

Javascript 未捕获类型错误:无法读取属性';指数';for循环中未定义的,javascript,Javascript,我有以下代码 var results = ["img", "some_class"]; for ( var i = 0; i <= results.length; i++ ){ if (results[i] === "input"){ elements = []; } else if (results[i].indexOf("class") > -1 ){ className = results[

我有以下代码

var results = ["img", "some_class"];

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

        if (results[i] === "input"){
            elements = [];

        } else if (results[i].indexOf("class") > -1 ){

            className = results[i];
            b = document.getElementsByClassName;

            for ( var i = 0; i < b.length; i++ ){
                elements.push(b[i]);
            }

        } else if (results[i].indexOf("id") > -1 ){

            id = results[i];
            searchId = document.getElementById(id);
            elements.push(searchId);
            }
        }
var结果=[“img”,“some_class”];
对于(变量i=0;i-1){
className=结果[i];
b=document.getElementsByClassName;
对于(变量i=0;i-1){
id=结果[i];
searchId=document.getElementById(id);
元素。推送(searchId);
}
}
我试图检查
results
数组中是否有任何元素包含字符串“class”或“id”,但我得到
uncaughttypeerror:无法读取未定义的属性“indexOf”

您可以看到,
results
数组确实在第二个元素中包含“class”,但我的代码没有发挥作用

任何帮助都将不胜感激:)

替换您不能使用的
i