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 相关文章推荐
在IE模态窗口中自由查看HTML源码的方法
Mar 08 Javascript
JS 自动安装exe程序
Nov 30 Javascript
js中widow.open()方法使用详解
Jul 30 Javascript
js对文章内容进行分页示例代码
Mar 05 Javascript
js中取得变量绝对值的方法
Jan 03 Javascript
浅谈 javascript 事件处理
Jan 04 Javascript
Vue.js每天必学之Class与样式绑定
Sep 05 Javascript
Vue 组件间的样式冲突污染
Aug 31 Javascript
详解实现一个通用的“划词高亮”在线笔记功能
Apr 23 Javascript
vue项目部署到nginx/tomcat服务器的实现
Aug 26 Javascript
vue elementui tree 任意级别拖拽功能代码
Aug 31 Javascript
vue.js 使用原生js实现轮播图
Apr 26 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
Windows下XDebug 手工配置与使用说明
2010/07/11 PHP
解析PHP跨站刷票的实现代码
2013/06/18 PHP
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
php实现curl模拟ftp上传的方法
2015/07/29 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
js判断生效时间不得大于失效时间的思路及代码
2013/04/23 Javascript
jquery固定底网站底部菜单效果
2013/08/13 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
浅谈jquery的map()和each()方法
2016/06/12 Javascript
jQuery ajax中使用confirm,确认是否删除的简单实例
2016/06/17 Javascript
简易的JS计算器实现代码
2016/10/18 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
详谈js模块化规范
2017/07/07 Javascript
使用 vue-i18n 切换中英文效果
2018/05/23 Javascript
详解基于mpvue微信小程序下载远程图片到本地解决思路
2019/05/16 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
2019/08/03 Javascript
Vue移动端实现图片上传及超过1M压缩上传
2019/12/23 Javascript
[02:11]2016国际邀请赛中国区预选赛全程回顾
2016/07/01 DOTA
在Python的循环体中使用else语句的方法
2015/03/30 Python
Django的分页器实例(paginator)
2017/12/01 Python
Python random模块用法解析及简单示例
2017/12/18 Python
Python3实现统计单词表中每个字母出现频率的方法示例
2019/01/28 Python
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
TensorFlow命名空间和TensorBoard图节点实例
2020/01/23 Python
常用python爬虫库介绍与简要说明
2020/01/25 Python
有关pycharm登录github时有的时候会报错connection reset的问题
2020/09/15 Python
Python操作PostgreSql数据库的方法(基本的增删改查)
2020/12/29 Python
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
安全生产检查通报
2014/01/29 职场文书
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
《晚上的太阳》教学反思
2014/04/23 职场文书
镇政府副镇长群众路线专题民主生活会对照检查材料
2014/09/19 职场文书
医德医风自我评价
2014/09/19 职场文书
初中重阳节活动总结
2015/05/05 职场文书
中国古代史学名著《战国策》概述
2019/08/09 职场文书