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