a.age - b.age); return clone; } const data = [ { name: "a", age: 30 }, { name: "b", age: 10 }, { name: "c", age: 20 } ]; const sorted = sortArray(data); console.log(JSON.stringify(data)); console.log(JSON.stringify(sorted)); // [{"name":"hohoho","age":30},{"name":"b","age":10},{"name":"c","age":20}] // [{"name":"b","age":10},{"name":"c","age":20},{"name":"hohoho","age":30}]"> a.age - b.age); return clone; } const data = [ { name: "a", age: 30 }, { name: "b", age: 10 }, { name: "c", age: 20 } ]; const sorted = sortArray(data); console.log(JSON.stringify(data)); console.log(JSON.stringify(sorted)); // [{"name":"hohoho","age":30},{"name":"b","age":10},{"name":"c","age":20}] // [{"name":"b","age":10},{"name":"c","age":20},{"name":"hohoho","age":30}]"> a.age - b.age); return clone; } const data = [ { name: "a", age: 30 }, { name: "b", age: 10 }, { name: "c", age: 20 } ]; const sorted = sortArray(data); console.log(JSON.stringify(data)); console.log(JSON.stringify(sorted)); // [{"name":"hohoho","age":30},{"name":"b","age":10},{"name":"c","age":20}] // [{"name":"b","age":10},{"name":"c","age":20},{"name":"hohoho","age":30}]">
function sortArray(array) {
  const clone = array.slice();
  clone[0].name = "hohoho";
  clone.sort((a, b) => a.age - b.age);
  return clone;
}

const data = [
  { name: "a", age: 30 },
  { name: "b", age: 10 },
  { name: "c", age: 20 }
];

const sorted = sortArray(data);

console.log(JSON.stringify(data));
console.log(JSON.stringify(sorted));

// [{"name":"hohoho","age":30},{"name":"b","age":10},{"name":"c","age":20}] 
// [{"name":"b","age":10},{"name":"c","age":20},{"name":"hohoho","age":30}]

immutable sort test