简体   繁体   中英

Sort an array on month order

I want to sort this array, According to the month Jan, feb, march and so on. using JavaScript on front-end

[[["February",17],["January",30],["March",40],["April",40],["May",50],["June",60]]]

Use sort() with a month order mapping object

 var data = [ ["June", 60], ["February", 17], ["January", 30], ["March", 40], ["April", 40], ["May", 50] ]; // object which holds the order value of the month var monthNames = { "January": 1, "February": 2, "March": 3, "April": 4, "May": 5, "June": 6, "July": 7, "August": 8, "September": 9, "October": 10, "November": 11, "December": 12 }; // sort the data array data.sort(function(a, b) { // sort based on the value in the monthNames object return monthNames[a[0]] - monthNames[b[0]]; }); document.write('<pre>' + JSON.stringify(data, 0, 3) + '</pre>') 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM