JavaScript 5

[Js] delete 연산자

deleteAllChildren(childId); function deleteAllChildren(id) { const place = draft[id]; place.childIds.forEach(deleteAllChildren); delete draft[id]; } 리액트를 공부하다가 delete라는 문법을 새로 알게 되었다.delete draft[id]에서 사용된 delete는 JavaScript의 연산자(operator)로,객체에서 속성(프로퍼티)을 제거할 때 사용하는 문법(배열에서는 사용 X) delete 문법delete object.property;// ordelete object['propertyName'];객체에서 특정 속성(key)를 완전히 제거함제거된 후에는 그 속성이..

JavaScript 2025.07.13

[JavaScript] 화살표 함수

매개변수 목록 괄호 생략하기화살표 함수가 매개변수를 하나만 사용할 경우, 묶는 괄호를 생략할 수 있다.(userName) => { ... }가 아니라userName => { ... } 매개변수가 없는 경우에는, 괄호를 생략하면 안된다.() => { ... } 매개변수가 두 개 이상인 경우에도 괄호를 생략하면 안된다.userName, userAge => { ... }가 아니라(userNAme, userAge) => { ... } 함수 본문 중괄호 생략하기화살표 함수에 반환문 외에 다른 로직이 없는 경우, return 키워드와 중괄호를 생략할 수 있다.number => { return number * 3;}가 아니라number => number * 3;라고 쓸 수 있다.// 아래와 같이 쓰면 오류 발생n..

JavaScript 2025.06.19

[JavaScript] null과 undefined의 차이점

typeof null // object 변수를 선언하고 빈 값을 할당한 상태이다.즉, 빈 객체이며 의도적으로 비어있음을 나타낸다.값의 부재를 의미한다. typeof undefined // undefined 값이 할당되지 않은 변수 혹은 속성을 사용하려고 할 때, undefined가 반환된다.즉, 변수의 초기값이다.또한 undefined는 원시값(Primitive Type)이기도 하다. undefined == null // trueundefined === null // false!null //trueisNaN(1 + undefined) // trueisNaN(1 + null) // false JavaScript에서 undefined는 숫자 연산에 참여하..

JavaScript 2025.06.17

자바스크립트 className과 classList

class를 추가할 때 className과 classList 두가지 방법을 쓸 수 있는데 둘 사이에는 차이점이 존재한다. className은 class 전체를, classList는 개별 class를 관리할 때 편리하다. className은 class 전체가 바뀌어버리지만 classList는 노드의 클래스만을 바꾸기 때문에 add, remove, contains, toggle등의 함수를 사용할 수 있다. [ className ]1. element.className; -> 클래스 이름 반환 2. element.className = "클래스명"; -> 클래스 적용 (이미 존재하면 중복 추가) [ classList ]1. element.classList; -> 클래스 이름 반환 2. element.classLi..

JavaScript 2024.08.07