(转)js:字符串(string)转json
第一种方式:
使用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);
- }
(转)js:字符串(string)转json的更多相关文章
- js:字符串(string)转json
第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + ...
- 使用js进行string和json之间转换的方法
在数据传输过种中,json是以文本,即字符串的形式传递,字符串形似Json对象: var str1 = '{ "name": "Amy", "sex& ...
- JS于string 和 json互转对象
一.json开启string JSON.stringify(jsonObj) 两.string开启json eval(string) 版权声明:本文博主原创文章.博客,未经同意不得转载.
- 字符串(string)转json
第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + ...
- js字符串String提取方法比较
JavaScript: Slice, Substring, or Substr的选择! 在JavaScript中,字符串主要通过以下String方法之一提取: // slice // syntax: ...
- js字符串String常用方法
1. charAt() 返回指定位置的字符. str.charAt(index) index 为必须参数,类型为number(0到str.length-1之间,否则该方法返回 空串 ...
- jquery:字符串(string)转json
第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + ...
- js中string和json的相互转换
1.将string转成json var json={}; var myorderno=$("#myorderno").val(); json.myorderno=myorderno ...
- JS 字符串 String对象
charAt(index) 返回指定索引位置的字符 charCodeAt() 返回指定索引位置字符的 Unicode 值 indexOf(searchString, startIndex) 返回子字符 ...
随机推荐
- 【Hibernate】Hibernate系列6之HQL查询
HQL查询 6.1.概述 6.2.分页查询 6.3.命名查询 6.4.投影查询-部分字段查询 6.5.报表查询 6.6.迫切左外连接.左外连接 6.7.迫切内连接.内连接 6.8.QBC查询.本地查询
- 《ASP.NET MVC4 WEB编程》学习笔记------RenderBody,RenderPage,RenderSection
ASP.NET MVC 3 已经正式发布了,现在估计许多人都在拼命学,我也不能例外,刚刚看到了一篇文章,介绍了三个非常有用的方法:RenderBody,RenderPage和RenderSection ...
- CSS本页写样式
<style type="text/css">p{ color:#ff0000; font-size:24px; font-family:"隶书"; ...
- mysql lower,upper实现大小写
mysql的lower和uppper函数可以将指定字符串转换为小写和大写 select lower('OutSpringTd') as lowerCase, upper('OutSpringTd') ...
- jquery validate自定义checkbox验证规则和样式
参考:http://blog.csdn.net/xh16319/article/details/9987847 自定义checkbox验证,“检查checkbox是否选中” jQuery.valida ...
- PHP负数判空
2014年11月6日 10:08:09 $a = -1; $b = '-1'; $c = empty($a); $d = empty($b); var_dump($c, $d); // bool(fa ...
- Delphi经验总结(1)
先人的DELPHI基础开发技巧 ◇[DELPHI]网络邻居复制文件 uses shellapi; copyfile(pchar('newfile.txt'),pchar('//computername ...
- [Android UI] ProgressBar自定义
转载自:http://gundumw100.iteye.com/blog/1289348 1: 在JAVA代码中 在java代码中 ProgressBar 继承自View, 在android ...
- Linux命令自己总结
对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面 ...
- EF架构~为EF DbContext生成的实体添加注释(T5模板应用)(转载)
转载地址:http://www.newlifex.com/showtopic-1072.aspx 最近新项目要用Entity Framework 6.x,但是我发现从数据库生成模型时没有生成字段的注释 ...