dev/vue.js
상품정렬기능과 데이터 원본 보존 (오브젝트 내부 데이터 비교)
dev_0hoon
2024. 5. 3. 15:47
priceSort(){
this.원룸들.sort(function(a,b){
return a.price - b.price
});
//[3,5,2].sort(); //2,3,5 이건 문자순 정렬임
/*[3,5,2].sort(function(a,b){
return a-b
})*/ //숫자 순 정렬
}
다음 과 같이 원룸들.sort(function(a,b) 를 입력했는데 a는 이전 원룸, b는 다음 원룸으로 된다. 이 점을 이요해서
a.price처럼 값을 꺼내 쓸 수 있다..
되돌리기를 사용하고 싶다면 원래의 데이터를 하나더 만들어 state에 두는 방식으로 사용한다.
sortBack(){
//this.원룸들 = this.원룸들오리지널;
//array를 = 하면왼쪽 오른쪽은 값을 공유해주세요가 된다.
this.원룸들 = [...this.원룸들오리지널];
}
array끼리 = 부등호를 사용하면 값 공유가 된다. 리액트와 같이 [...데이터]를 사용하면 값이 별개의 카피가 된다.
export default {
name: 'App',
data(){
return {
원룸들오리지널 : [...data],
오브젝트 : {name : 'kim', age : 20},
누른거 : 0,
원룸들 : data,
모달창열렸니 : false,
신고수 : [0,0,0],
products: ['역삼동원룸','천호동원룸','마포구원룸'],
메뉴들 : ['Home','Shop', 'About'],
}
},
원룸들오리지널 또한 카피 본으로 두어야 한다. 값이 공유되지 않도록