jquery:字符串(string)转json
第⼀种⽅式:jquery字符串截取
使⽤js函数eval();
testJson=eval(testJson);是错误的转换⽅式。
正确的转换⽅式需要加(): testJson = eval("(" + testJson + ")");
eval()的速度⾮常快,但是他可以编译以及执⾏任何javaScript程序,所以会存在安全问题。在使⽤eval()。来源必须是值得信赖的。需要使⽤更安全的json解析器。在服务器不严格的编码在json或者如果不严格验证的输⼊,就有可能提供⽆效的json或者载有危险的脚本,在eval()中执⾏脚本,释放恶意代码。
js代码:
function ConvertToJsonForJs() {
//var testJson = "{ name: '⼩强', age: 16 }";(⽀持)
/
/var testJson = "{ 'name': '⼩强', 'age': 16 }";(⽀持)
var testJson = '{ "name": "⼩强", "age": 16 }';
//testJson=eval(testJson);//错误的转换⽅式
testJson = eval("(" + testJson + ")");
alert(testJson.name);
}
第⼆种⽅式使⽤jquery.parseJSON()⽅法对json的格式要求⽐较⾼,必须符合json格式
jquery.parseJSON()
js:代码
function ConvertToJsonForJq() {
var testJson = '{ "name": "⼩强", "age": 16 }';
/
/不知道
//'{ name: "⼩强", age: 16 }' (name 没有使⽤双引号包裹)
//"{ 'name': "⼩强", 'age': 16 }"(name使⽤单引号)
testJson = $.parseJSON(testJson);
alert(testJson.name);
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。