티스토리 뷰

https://boseungdl.github.io/webs_class/javascript/effect/searchEffect06.html


      const searchBox =document.querySelector(".search span"); //버튼
      const cssList = document.querySelector(".list ul");      //속성 리스트
      const cssCount = document.querySelector(".count")        //css 갯수

      //데이터 출력
      const updateList = function (){
        let listHTML = '';

        // for(let i=0; i<cssProperty.length; i++){
        //     listHTML += `${arr[i].num}. ${arr[i].name} : ${arr[i].desc}`;
        //     countHTML = index + 1;
        // }

        cssProperty.forEach((data, index) => {
            listHTML += `${data.num}. ${data.name} : ${data.desc}`;
            countHTML = index + 1;
        });
        cssList.innerHTML = listHTML;
        cssCount.innerHTML = countHTML;

      }
      updateList();

        //반대 정렬
        function reverse(){ 			
            cssProperty.reverse();
            updateList();
        }
        //오름차순 정렬
        function sortAscending(){		//return 값이 음수 일시 b가 a보다 먼저 위치한다.
            cssProperty.sort((a,b) => {
                return a.num - b.num;
            });
            updateList();
        }
        //내림차순 정렬
        function sortDescending(){   //return 값이 양수 일시 a가 b보다 먼저 위치한다.
            cssProperty.sort((a,b) => {
                return b.num - a.num;
            });
            updateList();
        }
         //알파벳순 정렬(a~z)
         function sortAlphabet(){		
            cssProperty.sort((a,b) => {
                let x = a.name;
                let y = b.name;
                return x.localeCompare(y)		//x.localeCompare(y)은 -1을 반환하기 때문에 a,b 순으로 정렬
            });
            updateList();
        }
        //알파벳순 정렬(z~a)
        function sortAlphabetZ(){
            cssProperty.sort((a,b) => {
                let x = a.name;
                let y = b.name;
                return y.localeCompare(x)		// y.localeCompare(x)는 1을 반환하기 때문에 b, a 순으로 정렬
            });
            updateList();
        }
        //반대로 버튼 클릭 시
        document.querySelector(".btn1").addEventListener("click", () => {
            reverse();
        })
        //오름차순 버튼 클릭 시
        document.querySelector(".btn2").addEventListener("click", () => {
            sortAscending();
        })
        //내림차순 버튼 클릭 시
        document.querySelector(".btn3").addEventListener("click", () => {
            sortDescending();
        })
        //알파벳순 정렬(a~z) 버튼 클릭 시
        document.querySelector(".btn4").addEventListener("click", () => {
            sortAlphabet();
        })
        //알파벳순 정렬(z~a) 버튼 클릭 시
        document.querySelector(".btn5").addEventListener("click", () => {
            sortAlphabetZ();
        })

'Script Sample > Search Effect' 카테고리의 다른 글

searchEffect05 - filter()  (0) 2022.02.15
searchEffect04 - find()  (0) 2022.02.08
searchEffect03 - charAt( )  (0) 2022.02.08
searchEffect02 - includes()  (8) 2022.02.07
searchEffect01 - indexOf()  (4) 2022.02.07
댓글
© 2018 webstoryboy