Siva Sai
Siva Sai

Reputation: 396

How to sort an array of elements based on the condition

I have an array of elements as

let array = ["Approved", "Pending", "Not Approved", "Rejected", "Failed"]

I have an Another array

let array1 = ["Approved", "Failed", "Pending", "Not Approved", "Pending", "Rejected", "Not Approved"]

I want to sort the array1 elements based on the order i have in array

Expected Output:

["Approved", "Pending",  "Pending", "Not Approved", "Not Approved", "Rejected", "Failed",]

Upvotes: 0

Views: 53

Answers (1)

Konrad
Konrad

Reputation: 24661

const array = ["Approved", "Pending", "Not Approved", "Rejected", "Failed"]
const array1 = ["Approved", "Failed", "Pending", "Not Approved", "Pending", "Rejected", "Not Approved"]

array1.sort((a, b) => array.indexOf(a) - array.indexOf(b))

console.log(array1)

Upvotes: 2

Related Questions