[javascript] delete 연산자
delete
연산자는 객체의 속성이나 배열의 요소를 제거하는 데 사용됩니다. 이 연산자는 속성에 할당된 값을 undefined
로 설정하고, 속성을 제거하지는 않습니다.
객체의 속성 제거
아래 예시는 객체의 속성을 삭제하는 방법을 보여줍니다.
let obj = {name: 'Alice', age: 30};
console.log(obj); // {name: 'Alice', age: 30}
delete obj.age;
console.log(obj); // {name: 'Alice'}
위의 코드에서 delete obj.age
를 호출하여 age
속성을 제거했습니다.
배열 요소 제거
배열에서 요소를 제거하는 예시를 살펴보겠습니다.
let arr = ['apple', 'banana', 'cherry'];
console.log(arr); // ['apple', 'banana', 'cherry']
delete arr[1];
console.log(arr); // ['apple', empty, 'cherry']
console.log(arr.length); // 3
위의 코드에서 delete arr[1]
을 호출하여 banana
요소를 제거했습니다. 그 결과 arr
배열은 [ 'apple', empty(1), 'cherry']
가 되었습니다. arr
배열의 길이는 여전히 3
입니다.
하지만, delete
연산자를 사용하여 배열의 요소를 제거하는 것은 권장되지 않습니다. 대신 splice()
메서드를 사용하는 것이 좋습니다.
주의사항
delete
연산자로 제거된 요소는 배열의 빈 공간으로 남아, 배열 길이는 변경되지 않습니다.delete
연산자로 제거된 요소의 자리에는empty
키워드가 표기됩니다.
delete
연산자를 사용하여 객체의 속성이나 배열의 요소를 제거할 때 주의해야 하며, 필요한 경우에만 사용해야 합니다.
더 자세한 정보는 MDN delete 문서를 참고하세요.