script.js 891 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. var persons = [
  2. {name: "Иван", age: 17},
  3. {name: "Мария", age: 35},
  4. {name: "Алексей", age: 73},
  5. {name: "Яков", age: 12},
  6. ]
  7. function sort(arr, key, boolean = true) {
  8. let middleArr = [];
  9. for (let i = 0; i < arr.length; i++) {
  10. middleArr.push(arr[i][key]);
  11. }
  12. for (let j = 0; j < middleArr.length; j++) {
  13. let index = 0
  14. for (let k = 1; k < middleArr.length;) {
  15. if (middleArr[index] > middleArr[k]) {
  16. [middleArr[index], middleArr[k]] = [middleArr[k], middleArr[index]]
  17. k += 2
  18. index += 1
  19. } else {
  20. k += 1
  21. index += 1
  22. }
  23. }
  24. }
  25. if (boolean == false) {
  26. middleArr.reverse()
  27. }
  28. return middleArr
  29. }
  30. console.log(sort(persons, "age"));
  31. console.log(sort(persons, "name", false))