我遇到了循环遍历一系列对象的情况。可以说,每当有两个以上的对象时,如果第一个对象不存在,如何跳过该对象并继续下一个对象?
这是循环:
@foreach
这是第一个对象不存在时的打印数组:
for (i = 0; i < this.myInputFields.myTextFields.length; i++) {
if (!this.myInputFields.myTextFields[i] || this.myInputFields.myTextFields[i] == null || this.myInputFields.myTextFields[i] === '') {
//go to next
}
if (this.myInputFields.myTextFields[i].key) {
data[this.myInputFields.myTextFields[i].key] = this.myInputFields.myTextFields[i].inputValues;
}
}
如您所见,在该对象之前有一个逗号,在逗号之前有一个空格,因此我不知道如何跳过该空格。
答案 0 :(得分:3)
这段代码将允许您跳过为空的元素。
for (let i = 0; i < this.myInputFields.myTextFields.length; i += 1) {
if (this.myInputFields.myTextFields[i]) {
// print valid element if you want or do whatever you want
data[this.myInputFields.myTextFields[i].key] = this.myInputFields.myTextFields[i].inputValues;
}
}
更有效的方法是
let array = this.myInputFields.myTextFields.filter(item => item !== undefined); // you can eliminate all undefined elements with filter method
for (let i = 0; i < array.length; i += 1) {
data[array[i].key] = array[i].inputValues;
}