<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="jquery-1.9.1.js"></script>
<script>
$(function () {
var json = '{"url":"http://bbs.moxun.pw","title":"测试"}';
var dt = eval("(" + json + ")");
var html = "<a href='" + dt.url + "'>" + dt.title + "</a>";
$("#test").html(html);
})
</script>
</head>
<body>
<div id="test"></div>
</body>
</html>
文章由爱资料原创本文地址:https://www.apizl.com/archives/view-46-1.html,转载请以链接形式标明本文地址!
使用js函数eval();
testJson=eval(testJson);是错误的转换方式。
正确的转换方式需要加(): testJson = eval("(" + testJson + ")");
eval()的速度非常快,但是他可以编译以及执行任何javaScript程序,所以会存在安全问题。在使用eval()。来源必须是值得信赖的。需要使用更安全的json解析器。在服务器不严格的编码在json或者如果不严格验证的输入,就有可能提供无效的json或者载有危险的脚本,在eval()中执行脚本,释放恶意代码。
关键字词: