Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.16 KB | None | 0 0
  1. // array of objects
  2. var arrayOfObjects = [
  3. {
  4. name: "Stannis Baratheon",
  5. rank: 2
  6. },
  7. {
  8. name: "Eddard Stark",
  9. rank: 1
  10. },
  11. {
  12. name: "Brandyn Tully",
  13. rank: 4
  14. },
  15. {
  16. name: "Davos Seaworth",
  17. rank: 3
  18. },
  19. {
  20. name: "Bronn",
  21. rank: 5
  22. },
  23. {
  24. name: "Jaqen H'ghar",
  25. rank: 8
  26. },
  27. {
  28. name: "Beric Dondarrian",
  29. rank: 6
  30. },
  31. {
  32. name: "Sandor Clegane",
  33. rank: 9
  34. },
  35. {
  36. name: "Thoros of Myr",
  37. rank: 7
  38. },
  39. {
  40. name: "Oberyn Martell",
  41. rank: 11
  42. },
  43. {
  44. name: "Barriston Selmy",
  45. rank: 10
  46. }
  47. ];
  48.  
  49. // make a copy of array of object
  50. var copyOfArray = arrayOfObjects.slice(0); // with slice we make a copy not refrence
  51.  
  52. // function to sort the array of object by rank
  53. const funcToSortByRank = copyOfArray => {
  54. copyOfArray.sort((a, b) => {
  55. return a.rank - b.rank;
  56. });
  57. console.log(copyOfArray);
  58. };
  59.  
  60. // function to find average rank
  61. const funcForFindAvg = (array, key) => {
  62. let average = array.reduce(function(r, a) {
  63. return r + a[key];
  64. }, 0);
  65. console.log("Average rank :" + average / array.length);
  66. };
  67.  
  68. // function calls
  69. funcToSortByRank(copyOfArray);
  70. funcForFindAvg(copyOfArray, "rank");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement