字符串(string)转json
2023-09-11 14:14:58 时间
第一种方式:
使用js函数eval();
testJson=eval(testJson);是错误的转换方式。
正确的转换方式需要加(): testJson = eval("(" + testJson + ")");
eval()的速度非常快,但是他可以编译以及执行任何JavaScript程序,所以会存在安全问题。在使用eval()。来源必须是值得信赖的。需要使用更安全的json解析器。在服务器不严格的编码在json或者如果不严格验证的输入,就有可能提供无效的json或者载有危险的脚本,在eval()中执行脚本,释放恶意代码。
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); }
相关文章
- JSON简介以及用法汇总
- Json对象与Json字符串的转化、JSON字符串与Java对象的转换
- JSON入门之二:org.json的基本使用方法
- js 在Json中查找数据
- Docker修改daemon.json后无法启动的问题
- 会员中心通过AJAX、JSON、PHP、MySql等技术实现注册和登录功能(1+X Web前端开发中级 例题)——初稿
- 【Java】+【JSON】+对比两个json对象是否完全一样
- GO语言练习:构建json 和 解析JSON 实例
- JSON.parseObject(String str)与JSONObject.parseObject(String str)的区别
- easyui datagrid json 格式
- PHP判断一个JSON对象是否含有某一个属性的方法
- 【转】Qt之JSON保存与读取
- 小程序开发笔记【二】,抽奖结果json数据拼装bug解决
- json和对象、list互转
- 浅析mybatis懒加载导致无法序列化的问题、Json序列化对象时错误Could not write JSON: No serializer found for class
- C# 调用API接口处理公共类 自带JSON实体互转类
- Spring MVC JSON自己定义类型转换(续)
- AJAX,JSON搜索智能提示
- 【C#】读取Excel中嵌套的Json对象,Json带斜杠的问题(其三)
- php url链接地址传数组方法 json_decode解析数组失败 经过url链接的json数组解析出错的解决方法 (原)