I am working on Angular 4. I was trying to loop object/array using for loop. I am getting output in console but in the build and compile getting errors. Not sure what mistake i am doing.
my data will look like this
let ArrayVal = [{
comparator: 'EQ',
flight: [{
number: 123
}, {
grouping: 'Flight Group South America'
}]
}, {
comparator: 'NEQ',
flight: [{
number: 7000,
endNumber: 7999
}]
}];
now i need to fetch numbers from this above data, expected output is numbers = ['123','7000-7999']
so tried something like this
let numbers: any = [];
for ( let val of ArrayVal){
for (let flight of val.flight) {
if ( flight.hasOwnProperty('number') && flight.hasOwnProperty('endNumber') ) {
numbers.push(flight.number + '-' + flight.endNumber );
}else if (flight.hasOwnProperty('number')) {
numbers.push(flight.number);
}
}
}
console.log(numbers)
i am getting output as expected in console numbers = [123, "7000-7999"] but issue is getting error in build and compile
TS2339: Property 'endNumber' does not exist on type '{ number: number; } | { grouping: string; }'.
Property 'endNumber' does not exist on type '{ number: number; }'.
TS2339: Property 'number' does not exist on type '{ number: number; } | { grouping: string; }'.
Property 'number' does not exist on type '{ grouping: string; }'.
could someone tell me and help me to loop this data. flight.number gives error property number doesnt exist on type '{ number: number; } | { grouping: string; }'