In an array take alternate numbers and swap them. Put it again in the place of array again e.g., arr = [8,7,4,6,9,3,2,1] newarr= [8,1,4,3,9,6,2,7]
The Code which I tried is below one
let arr = [8, 7, 4, 6, 9, 3, 2, 1]; let data = arr.map((val, index, curr) => { if (index == 0) { return curr[index]; } else if (index == 1) { return curr[7]; } else if (index == 2) { return curr[index]; } else if (index == 3) { return curr[5]; } else if (index == 4) { return curr[index]; } else if (index == 5) { return curr[3]; } else if (index == 6) { return curr[index]; } else if (index == 7) { return curr[1]; } }); console.log(data);
This is not the correct way to proceed.
Advertisement
Answer
When you consider every odd indexed element to be alternate –
let arr = [8, 7, 4, 6, 9, 3, 2, 1]; let lastAlternate = arr.length % 2 == 0 ? arr.length : arr.length - 1; let data = arr.map((val, index, curr) => { if (index % 2 == 0) { return curr[index]; } else { return curr[lastAlternate - index]; } }); console.log(data);