fork download
  1. var jsonObject = {
  2. "articles":[
  3. {
  4. "name":"aaa",
  5. "date":"10/13/15",
  6. "views":65
  7. },
  8. {
  9. "name": "aa",
  10. "date": "10/01/14",
  11. "views": 512
  12. },
  13. {
  14. "name":"ccc",
  15. "date":"10/17/15",
  16. "views":175
  17. },
  18. {
  19. "name":"bbb",
  20. "date":"10/11/15",
  21. "views":54
  22. },
  23. {
  24. "name":"ddd",
  25. "date":"10/17/15",
  26. "views":6
  27. }
  28. ]
  29. };
  30.  
  31. function compareByName(a, b) {
  32. var namea = a.name, nameb = b.name;
  33. for(var i = 0; i < namea.length && i < nameb.length; i++) {
  34. if(namea.charCodeAt(i) !== nameb.charCodeAt(i))
  35. return namea.charCodeAt(i) - nameb.charCodeAt(i);
  36. }
  37. return namea.length - nameb.length;
  38. }
  39.  
  40. function compareByViews(a, b) {
  41. return a.views - b.views;
  42. }
  43.  
  44. jsonObject.articles.sort(compareByName);
  45.  
  46. jsonObject.articles.forEach(function (e) {
  47. print(e.name);
  48. });
  49. print("");
  50.  
  51. jsonObject.articles.sort(compareByViews);
  52.  
  53. jsonObject.articles.forEach(function (e) {
  54. print(e.name);
  55. });
Success #stdin #stdout 0.02s 30320KB
stdin
Standard input is empty
stdout
aa
aaa
bbb
ccc
ddd

ddd
bbb
aaa
ccc
aa