eval 함수는 JavaScript 코드를 실행시켜주는 함수입니다. 하지만, XSS(Cross-Site Scripting)등의 보안문제로 사용하지 말 것을 추천하는데요. 그러나 분명 용도가 있었기에 만들어 졌을 것이기에 어디에 사용되는지 찾아봤습니다.
1.FaaS 같은 서비스를 만드는 경우에
- 사용자가 입력한 함수를 그대로 적용하기 위해
2. 프론트나 백 개발중에 hot reloading을 위해
- eval 함수는 재시작하거나 상태를 잃지 않고 코드를 변경할 수 있다
3. 웹팩등의 설정에서
const data = eval('require')(`./emails/${recipient}/${type}.json`)
참고 자료
https://stackoverflow.com/questions/10474306/whats-the-main-benefit-of-using-eval-in-javascript
'개발 > JavaScript' 카테고리의 다른 글
[JavaScript] 블랙커피 Vanilla JS Lv1. 문벅스 카페 메뉴 앱 만들기 #2 (0) | 2022.09.07 |
---|---|
[JavaScript] 블랙커피 Vanilla JS Lv1. 문벅스 카페 메뉴 앱 만들기 #1 (0) | 2022.09.04 |
[JavaScript] 템플릿 리터럴(template literal)의 여러가지 용도 (0) | 2022.01.27 |
[JavaScript] ES2022 새로운 특징 (0) | 2022.01.03 |
[JavaScript] String.prototype.split() (0) | 2022.01.03 |