[javascript] 클로저를 사용하여 데이터 파기 기능 추가하기
자바스크립트에서 클로저를 사용하여 데이터 파기 기능을 추가하는 방법에 대해 알아보겠습니다.
클로저란 무엇인가요?
클로저는 함수와 그 함수가 선언된 렉시컬 환경의 조합입니다. 클로저를 사용하면 함수가 선언될 당시의 환경을 기억하고 이 환경 내의 변수에 접근할 수 있습니다.
클로저를 사용한 데이터 파기 기능 구현하기
function createDataProcessor() {
let data = [];
function processData(newData) {
data = newData;
}
function destroyData() {
data = [];
console.log('데이터가 파기되었습니다.');
}
function getData() {
return data;
}
return {
processData,
destroyData,
getData,
};
}
const dataProcessor = createDataProcessor();
dataProcessor.processData([1, 2, 3, 4]);
console.log(dataProcessor.getData()); // [1, 2, 3, 4]
dataProcessor.destroyData();
console.log(dataProcessor.getData()); // []
위의 예제에서는 createDataProcessor
함수를 사용하여 클로저를 생성하고, 그 내부에 데이터 파기 기능을 구현했습니다.
결론
클로저를 사용하면 함수 내에서 선언된 변수를 안전하게 보호하면서 그 변수에 접근하는 기능을 외부에 노출시킬 수 있습니다. 데이터 파기나 다른 기능을 보다 안전하게 제어할 수 있게 됩니다.
이것으로 클로저를 사용하여 데이터 파기 기능을 추가하는 방법에 대해 알아보았습니다.