[Modern][Javascript] 체크박스 전체 선택 / 전체 해제 구현

2024. 2. 21. 19:37·Javascript
반응형

Modern 시리즈는 작성일 기준 최신 자바스크립트 문법으로 구현한 예제입니다.

최신 문법으로 체크박스 전체 선택 / 전체 해제 구현하는 방법을 소개합니다.


JS

const checkAll = document.querySelector("[name=checkAll]");
const items = [...document.querySelectorAll("[name=items]")];

// 아이템 선택 이벤트
items.forEach(async (item) => {
  item.onchange = (e) => {
    checkAll.checked = items.every((item) => item.checked);
  }
});

// 전체 선택 이벤트
checkAll.onchange = (e) => {
  items.forEach(async (item) => item.checked = e.target.checked)
};

아이템 선택 이벤트

Array every 메소드로 items가 모두 체크되었는지 확인합니다.

every는 모두 체크되었다면 true를, 아니라면 false를 리턴합니다.

해당 값을 checkAll에게 할당합니다.

전체 선택 이벤트

Array forEach를 사용하여 items.checked에 checkAll.checked와 같은 값을 할당합니다.

async 비동기 처리로 조금 더 빠르게 처리합니다.

 

반응형

'Javascript' 카테고리의 다른 글

[Javascript] Array.map 비동기 처리로 성능 최적화하기 (async + Promise.all)  (2) 2025.08.08
[Modern][Javascript]Enum 올바르게 쓰는법 (클린코드)  (0) 2024.03.21
[Javascript] Enum 사용하기  (0) 2024.03.01
[Javascript] 신입, 취준생을 위한 현업에서 코드 짜는법(클린코드)  (0) 2024.02.28
'Javascript' 카테고리의 다른 글
  • [Javascript] Array.map 비동기 처리로 성능 최적화하기 (async + Promise.all)
  • [Modern][Javascript]Enum 올바르게 쓰는법 (클린코드)
  • [Javascript] Enum 사용하기
  • [Javascript] 신입, 취준생을 위한 현업에서 코드 짜는법(클린코드)
Aierse
Aierse
리액트, 뷰 등 웹 개발의 모든 것
    반응형
  • Aierse
    <Aierse />
    Aierse
  • 전체
    오늘
    어제
    • 분류 전체보기
      • CS
      • 프로그래밍
        • Editer
      • Javascript
      • 웹
        • React
        • VueJS
        • NestJS
      • NodeJS
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    클린코드
    CI/CD
    가독성
    자바스크립트
    vue3
    lambda
    enum
    vscode
    TypeScript
    async
    Workspace
    체크박스
    폴더 관리
    JSDOC
    NoSQL
    JavaScript
    serverless
    프로그래밍
    dynamodb
    리액트
    react
    array every
    actions
    nodejs
    Between
    AWS
    .vscode
    nestjs
    전체선택
    클린 코드
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Aierse
[Modern][Javascript] 체크박스 전체 선택 / 전체 해제 구현
상단으로

티스토리툴바