I have an object such as:
var dataObj = {
'hre': {groupID: 1},
'bla': {groupID: 1},
3: {groupID: 0},
4: {groupID: 2},
16: {groupID: 2},
6: {groupID: 2},
7: {groupID: 0},
64893: {groupID: 0},
9: {groupID: 1}
}
When the group is 0, it means that the field doesn't pertain to any group.
Fields of the same group must be adjacent. Else it should throw an error.
So for instance the object above would throw an error because fields of group 1 are not adjacent.
Looking for an efficient way of getting this done (or any way for that matter, because I haven't found one after some time).
var error = false;
var previousGroupID = null;
var thisGroupID = null;
var previousFieldGroupID = null;
for (index in dataArray) {
if (dataObj[index]['groupID'] > 0) {
thisGroupID = dataObj[index]['groupID'];
if (previousFieldGroupID == 0 && thisGroupID == previousGroupID) {
error = true;
}
}
previousFieldGroupID = dataObj[index]['groupID'];
}