js使用eval解析json实例与注意事项分享


Posted in Javascript onJanuary 18, 2014

JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
JSON的规则很简单: 对象是一个无序的“‘名称/值'对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值' 对”之间使用“,”(逗号)分隔

先来看个解析实例

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  <title>eval函数解析json对象</title>  
 </head>
 <body>
  <script type="text/javascript">
  var json=eval("({sitename:'dreamdu',sitedate:new Date(1980, 12, 17, 12, 0, 0)})");
  document.write(json.sitename); 
  document.write("<br />"); 
  document.write(json.sitedate); 
  </script>
 </body>
</html>

eval()解析JSON格式字符串应注意的问题
使用eval()解析JSON格式字符串应注意的问题
在利用javascript内置的eval函数,将json格式的字符串转换成JS对象时,需要用一对"()"先将该字符串包住.
例如:
将 var strTest="{id:"cnlei", url:"https://3water.com"}"; 转换成JS对象
正确写法:
var objTEST=eval("("+strTEST+")");
出错写法:
var objTEST=eval(strTEST);

完整测试代码:

<script type="text/javascript">
<!--
    var strTEST="{id:"cnlei", url:"https://3water.com"}";
    var objTEST=eval("("+strTEST+")"); //正确写法
    //var objTEST=eval(strTEST); //出错写法
    alert(objTEST.id+"n"+objTEST.url);
//-->
</script>
Javascript 相关文章推荐
JQuery获取各种宽度、高度(format函数)实例
Mar 04 Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
Dec 27 Javascript
javascript禁止访客复制网页内容的实现代码
Aug 05 Javascript
10个很棒的jQuery代码片段
Sep 24 Javascript
js点击按钮实现水波纹效果代码(CSS3和Canves)
Sep 15 Javascript
jQuery模拟窗口抖动效果
Mar 15 Javascript
jQuery zTree树插件动态加载实例代码
May 11 jQuery
VueJS 集成 Medium Editor的示例代码 (自定义编辑器按钮)
Aug 24 Javascript
vue 使用eventBus实现同级组件的通讯
Mar 02 Javascript
vue 项目中使用Loading组件的示例代码
Aug 31 Javascript
vue组件间的参数传递实例详解
Apr 26 Javascript
使用layui 的layedit定义自己的toolbar方法
Sep 18 Javascript
收集json解析的四种方法分享
Jan 17 #Javascript
javascript在子页面中函数无法调试问题解决方法
Jan 17 #Javascript
ie7+背景透明文字不透明超级简单的实现方法
Jan 17 #Javascript
用js控制组织结构图可以任意拖拽到指定位置
Jan 17 #Javascript
Jquery 获取对象的几种方式介绍
Jan 17 #Javascript
在javascript中如何得到中英文混合字符串的长度
Jan 17 #Javascript
JS阻止冒泡事件以及默认事件发生的简单方法
Jan 17 #Javascript
You might like
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
2008/11/18 PHP
Eclipse中php插件安装及Xdebug配置的使用详解
2013/04/25 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
2015/04/22 PHP
简单PHP会话(session)说明介绍
2016/08/21 PHP
JavaScript String.replace函数参数实例说明
2013/06/06 Javascript
angularjs实现与服务器交互分享
2014/06/24 Javascript
JS识别浏览器类型(电脑浏览器和手机浏览器)
2016/11/18 Javascript
Bootstrap3 模态框使用实例
2017/02/22 Javascript
jQuery实现下拉菜单的实例代码
2017/06/19 jQuery
vue中改变选中当前项的显示隐藏或者状态的实现方法
2018/02/08 Javascript
浅谈vue首屏加载优化
2018/06/28 Javascript
jdk1.8+vue elementui实现多级菜单功能
2020/09/24 Javascript
[01:32]2016国际邀请赛中国区预选赛CDEC战队教练采访
2016/06/26 DOTA
pytyon 带有重复的全排列
2013/08/13 Python
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python多线程编程(四):使用Lock互斥锁
2015/04/05 Python
Python随机数random模块使用指南
2016/09/09 Python
Python 迭代器与生成器实例详解
2017/05/18 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
python实现五子棋小程序
2019/06/18 Python
python简单鼠标自动点击某区域的实例
2019/06/25 Python
Python Numpy计算各类距离的方法
2019/07/05 Python
pandas中DataFrame修改index、columns名的方法示例
2019/08/02 Python
Django中FilePathField字段的用法
2020/05/21 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
Expedia加拿大官方网站:加拿大最大的在线旅游提供商
2017/12/31 全球购物
印尼综合在线预订网站:Tiket.com(机票、酒店、火车、租车和娱乐)
2018/10/11 全球购物
科颜氏香港官方网店:Kiehl’s香港
2021/03/07 全球购物
应届生煤化工求职信
2013/10/21 职场文书
篮球比赛策划方案
2014/06/05 职场文书
个人学习党的群众路线教育实践活动心得体会
2014/11/05 职场文书
2014年基层党支部工作总结
2014/12/04 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python
JavaScript canvas实现流星特效
2021/05/20 Javascript
OpenCV-Python实现油画效果的实例
2021/06/08 Python
详解Python flask的前后端交互
2022/03/31 Python