如何在下面的情况下使用标准 for 循环而不是 forEach?
我已经在 TextBox 中粘贴值时编写了此代码,如果长度超过 4 个字符,请将其附加到下一个文本框中,但是我的应用程序不支持 IE8 foreach 函数,因此我需要一个将运行普通 for 循环的函数。
var inputsArray= new Array(4);
inputsArray[0] = document.getElementById("id1");
inputsArray[1] = document.getElementById("id2");
inputsArray[2] = document.getElementById("id3");
inputsArray[3] = document.getElementById("id4");
for (var i = 0, len = inputsArray.length;i < len; i++) {
//some code
fillTextFields(this.value,startingField);
}
function fillTextFields(code, startingField) {
//***instead of forEach I need a normal for Loop how to do it?***
inputsArray.slice(startingField).forEach(function (item, iter) {
item.value = code.slice(iter * 4, iter * 4 + 4);
});
}
由于 slice 返回一个新数组,你应该能够这样做(假设 startingField 是一个整数):
var x = inputsArray.slice(startingField);
for (var i = 0; i < x.length; i++) {
...
}