-
쌩 자바스크립트이 정렬은
1. 데이터를 정렬하고
2. HTML에 반영
Vue는
1. 데이터 정렬하고 끝
-> {{데이터바인딩}} 해두면 HTML에 데이터가 실시간으로 반영
sort() 함수
array.sort() 어레이 뒤에 sort하면 오름차순으로 정렬됨
사실은 문자 정렬을 하고 있음 (가나다순)
> 숫자 정렬은 sort() 함수 안에 funtion(a,b){a-b} 해줘야함
array.sort(function(a,b){return a-b})
이렇게 해야 1,2,3 숫자순 정렬
return값이 음수면 a를 왼쪽으로 보내줌
*참고로 sort()하면 원본이 변형됨
map() filter()등은 원본을 보존해줌
요즘은 원본데이터를 보호하는것이 유행
data() { return { // originRooms : data, originRooms : [...data], } }
array/object 데이터의 각각 별개의 사본을 만들려면 [...array자료]
= 등호로 array를 집어 넣으면 왼쪽 오른쪽 값 공유하는 것이니 주의
sortBack() { this.rooms = this.originRooms; }
sortBack() { this.rooms = [...this.originRooms]; }
<template> <button @click="priceSort">가격순정렬</button> <button @click="sortBack">되돌리기</button> </template> <script> export default { name: 'App', data() { return { // originRooms : data, originRooms : [...data], rooms : data, } }, methods : { priceSort() { this.rooms.sort(function(a,b){return a.price-b.price}) }, sortBack() { this.rooms = [...this.originRooms]; } } } </script>
'Frontend' 카테고리의 다른 글
[vue3] lifecycle hook (0) 2024.11.10 [vue3] 라이프사이클 (0) 2024.11.10 [vue3] 자료의 사본 (0) 2024.11.10 [vue3] 데이터 감시 watch (0) 2024.11.10 [vue3] 등장/퇴장 애니메이션 <transition> (0) 2024.11.10