SOURCE

let bac = [{id:12,name:'李'},{id:13,name:'王'},{id:62,name:'赵'},{id:22,name:'孙'},]
 class Queue{
    #arr;

  constructor() {
    this.init();
  }

  init() {
    this.#arr = [];
  }
    asc() {
     return this.#arr.sort((a,b)=>a.id-b.id)
    }
    des() {
     return this.#arr.sort((a,b)=>b.id-a.id)
     }
    setDatas (data){
     this.#arr =  data
     //只是一维数组可以通过克隆来解决
    //  this.#arr = Array.from(data)

    }
}
let screen = new Queue()
 screen.setDatas(bac)
 console.log(screen.des())
 console.log(bac)
 bac.push({id:43,name:'刘'})
 console.log(bac)
 console.log(screen.asc())
 //多维数组一样会存在污染
// let bac = [{id:12,name:'李',arr:[1,2,3,4]},{id:13,name:'王'},{id:62,name:'赵'},{id:22,name:'孙'},]
//  class Queue{
//     #arr;

//   constructor() {
//     this.init();
//   }

//   init() {
//     this.#arr = [];
//   }
//     asc() {
//      return this.#arr.sort((a,b)=>a.id-b.id)
//     }
//     des() {
//      return this.#arr.sort((a,b)=>b.id-a.id)
//      }
//     setDatas (data){
//     //  this.#arr =  data.map(e=>e)
//      //只是一维数组可以通过克隆来解决
//      this.#arr = Array.from(data)

//     }
// }
// let screen = new Queue()
//  screen.setDatas(bac)
//  console.log(screen.des())
//  console.log(bac)
//  bac[0].arr.push(72)
//  console.log(bac)
//  console.log(screen.asc())




console 命令行工具 X clear

                    
>
console