demo.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
//eval函数可以用来将字符串转换成JavaScript代码并且运行
// var str = "var a = 10";
// eval(str);
// console.log(a);
//JSON格式的数据 JSON对象有兼容性问题
// var jsonData = '{"name":"zs", "age":18}';
// var o = JSON.parse(jsonData); // JavaScript方法,将JSON字符串转换成JSON对象
// console.log(o);
//JSON格式的数据 JSON对象有兼容性问题
// var jsonData = '{"name":"zs", "age":18}';
// var o = eval(jsonData);
// console.log(o); //低版本浏览器会解析出错 会把{}当成代码块来解析,而不是json对象。
//兼容JSON的两种方式
// eval("var o = "+ jsonData); // 第一种方式,在前面加上"var o = "
// var o = eval("("+jsonData+")"); // 第二种方式加上()括号。
// console.log(o);
//使用eval来解析JSON格式字符串的时候,会将{}解析为代码块,而不是对象的字面量
//第一种办法:在JSON格式的字符串前面拼接上 "var o ="
//第二种办法:把JSON格式的字符串使用()括起来,就不会将{}解析为代码块,而是表达式
var str = prompt("请输入内容");
eval(str); //不推荐使用eval 1.不安全 2.解析成JavaScript代码耗费资源
</script>
</head>
<body>
</body>
</html>