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控制listbox中项的移动并排序的实现代码
Sep 28 Javascript
HTML5之lang属性与dir属性的详解
Jun 19 Javascript
jQuery获得页面元素的绝对/相对位置即绝对X,Y坐标
Mar 06 Javascript
微信小程序 Flex布局详解
Oct 09 Javascript
jquery 仿锚点跳转到页面指定位置的实例
Feb 14 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
Jun 22 jQuery
jQuery 循环遍历改变a标签的href(实例讲解)
Jul 12 jQuery
详解npm 配置项registry修改为淘宝镜像
Sep 07 Javascript
iview同时验证多个表单问题总结
Sep 29 Javascript
手动下载Chrome并解决puppeteer无法使用问题
Nov 12 Javascript
基于vue如何发布一个npm包的方法步骤
May 15 Javascript
使用vuex-persistedstate本地存储vuex
Apr 29 Vue.js
收集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
php对gzip文件或者字符串解压实例参考
2008/07/25 PHP
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
2008/11/18 PHP
Zend Framework自定义Helper类相关注意事项总结
2016/03/14 PHP
PHP生成随机数的方法总结
2018/03/01 PHP
javascript 写类方式之一
2009/07/05 Javascript
jquery控制select的text/value值为选中状态
2014/06/03 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
2015/06/05 Javascript
JavaScript学习笔记之取数组中最大值和最小值
2016/03/23 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
canvas实现绘制吃豆鱼效果
2017/01/12 Javascript
footer定位页面底部(代码分享)
2017/03/07 Javascript
xmlplus组件设计系列之列表(4)
2017/04/26 Javascript
Angualrjs 表单验证的两种方式(失去焦点验证和点击提交验证)
2017/05/09 Javascript
vue实现压缩图片预览并上传功能(promise封装)
2019/01/10 Javascript
vue项目中仿element-ui弹框效果的实例代码
2019/04/22 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
Python字典的核心底层原理讲解
2019/01/24 Python
详解python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决
2019/08/27 Python
python numpy 矩阵堆叠实例
2020/01/17 Python
利用python对mysql表做全局模糊搜索并分页实例
2020/07/12 Python
django下创建多个app并设置urls方法
2020/08/02 Python
python 实现汉诺塔游戏
2020/11/28 Python
一款基于css3的动画按钮代码教程
2014/11/23 HTML / CSS
受欢迎的大学生自我评价
2013/12/05 职场文书
学校安全教育制度
2014/01/31 职场文书
劳动竞赛活动方案
2014/02/20 职场文书
优秀毕业生推荐信范文
2014/03/07 职场文书
协议书与合同的区别
2014/04/18 职场文书
单位作风建设自查报告
2014/10/23 职场文书
家电创业计划书
2019/08/05 职场文书
解决numpy数组互换两行及赋值的问题
2021/04/17 Python
mysql中between的边界,范围说明
2021/06/08 MySQL
简单聊聊TypeScript只读修饰符
2022/04/06 Javascript
ipad隐藏软件app图标方法
2022/04/19 数码科技
Python first-order-model实现让照片动起来
2022/06/25 Python