eval (문자로 표현된 코드 실행)
developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/eval
eval()
은 문자열안에 js
코드를 입력하게 되면 문자열이 아닌 표현식으로 판단해서 값을 평가한다.
하지만 eval()
의 경우는 해킹 위험때문에 사용하지말라고 하는데 MDN에서 저렇게 강조하는건 처음본다.
// '2+2'
console.log('2+2');
// 4
console.log(eval('2+2'));
// 'alert(1)'
console.log('alert(1)');
// 실제로 alert창이 출력됨
console.log(eval('alert(1)'));
// scope
function x() {
eval('var y = 10');
// 10
console.log(y);
}
x();
// undefind
console.log(y);
'JavaScript > Vanilla JS' 카테고리의 다른 글
IIFE (즉시 실행 함수) (0) | 2021.04.24 |
---|---|
Destructuring (구조 분해 할당) (0) | 2021.04.23 |
Promise (프로미스) 1 (0) | 2021.04.20 |
Array.concat (배열 추가 반환) (0) | 2021.04.18 |
call (this의 인자값 넘겨주기) (0) | 2021.04.17 |
댓글
이 글 공유하기
다른 글
-
IIFE (즉시 실행 함수)
IIFE (즉시 실행 함수)
2021.04.24 -
Destructuring (구조 분해 할당)
Destructuring (구조 분해 할당)
2021.04.23 -
Promise (프로미스) 1
Promise (프로미스) 1
2021.04.20 -
Array.concat (배열 추가 반환)
Array.concat (배열 추가 반환)
2021.04.18