I have a case where I need to compare between two arrays and display values from another.; For example, I have two arrays:
let a = ['a','b','c'];
let b = ['textA' 'textB', ' '];
So, I am basically trying to loop over the array b and display value like this:
textA
textB
C
So, when there are any empty values found in array b, display the same indexed values from array a.
Can anybody help with this. Thanks in advance.
CodePudding user response:
you can :
- trim the value to see if there is empty or only space
elem.trim().length
- if string is empty check if data in other array exist if
(!elem.trim().length && a[index])
let a = ['a','b','c'];
let b = ['textA', 'textB', ' '];
b.forEach((elem, index) => {
if (!elem.trim().length && a[index]) {
console.log(a[index]);
} else {
console.log(elem);
}
});
One other solution consist to create a result array with array.map and display all key of this new array
let a = ['a','b','c'];
let b = ['textA', 'textB', ' '];
let result = b.map((elem, index) => (!elem.trim().length && a[index]) ? a[index] : elem);
console.log(result);