평가 소개
--- 평가는 ECMA 정의에서 글로벌 오브젝트 프로토 타입의 방법입니다.
--- Eval으로 받아 들여지는 매개 변수는 String 형식 JS 코드이며, 이는 실행 엔진 ( '고급 프로그래밍'을 기억하고 현재 새 실행 엔진을 생성)에 의해 실행 된 다음 결과를 평가 호출 위치로 반환합니다.
<! doctype html> <html> <head> <title> 평가 학습 </title> <script type = "text/javaScript">/*eval ( "expression"); Execute expression 문 평가 ( "("+javaScript type+")"); JavaScript Object*/var jsonobj = { "name": "ljl", "data": 123}; // json, javaScript jsonstring = '{ "name": "ljl", "data": 123}'; // javaScript 문자열 내용, JSON 형식의 스타일을 준수합니다. objtype = eval ( "("+jsonstring+")"); // json 문자를 JavaScript 객체 알림 (jsonstring 타입)으로 변환; // stringalert (typeof objtype); // objalert (Eval (123)); // 123alert eval ( "("+123+")); // var x = 2; y = eval ( 'x+1'); // 2+1 expression Alert ( 'y ='+y); // 3 </script> </head> <body> </body> </html>보충 : 요약
Eval은 JS의 동적 특징 중 하나입니다. 이를 통해 JS 프로그램을 직접 실행하고 결과를 반환합니다. 일반적인 사용은 JSON 데이터를 JS 객체로 복원하는 것입니다.
그러나 런타임시 컨텍스트 객체를 동적으로 변경할 수 있으므로 주입 공격의 위험이 발생합니다.
그것을 사용할 때는 Eval의 문자열의 구문에주의를 기울이십시오. 일반적인 문제는 '브레이스'문제입니다