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 相关文章推荐
不一样的文字闪烁 轮番闪烁
Nov 11 Javascript
js设置function参数默认值(适合没有传参情况)
Feb 24 Javascript
jQuery中[attribute^=value]选择器用法实例
Dec 31 Javascript
JS常用算法实现代码
Nov 14 Javascript
浅谈jquery页面初始化的4种方式
Nov 27 Javascript
jquery实现文字单行横移或翻转(上下、左右跳转)
Jan 08 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 jQuery
bootstrap paginator分页前后台用法示例
Jun 17 Javascript
自己动手封装一个React Native多级联动
Sep 19 Javascript
webpack4.0+vue2.0利用批处理生成前端单页或多页应用的方法
Jun 28 Javascript
js实现点击图片在屏幕中间弹出放大效果
Sep 11 Javascript
Vue实现购物车实例代码两则
May 30 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
3种平台下安装php4经验点滴
2006/10/09 PHP
目录,文件操作详谈―PHP
2006/11/25 PHP
php zend 相对路径问题
2009/01/12 PHP
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
php cookie使用方法学习笔记分享
2013/11/07 PHP
php无法连接mysql数据库的正确解决方法
2016/07/01 PHP
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
删除Javascript Object中间的key
2014/11/18 Javascript
浅谈Sizzle的“编译原理”
2015/04/14 Javascript
apply和call方法定义及apply和call方法的区别
2015/11/15 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
有关jquery与DOM节点操作方法和属性记录
2016/04/15 Javascript
详解Node.js 命令行程序开发教程
2017/06/07 Javascript
Node.js 基础教程之全局对象
2017/08/06 Javascript
JavaScript中使用参数个数实现重载功能
2017/09/01 Javascript
JavaScript使用FileReader实现图片上传预览效果
2020/03/27 Javascript
node作为中间服务层如何发送请求(发送请求的实现方法详解)
2018/01/02 Javascript
JS大坑之19位数的Number型精度丢失问题详解
2019/04/22 Javascript
详解Vue数据驱动原理
2020/11/17 Javascript
python中的set实现不重复的排序原理
2018/01/24 Python
Python解决抛小球问题 求小球下落经历的距离之和示例
2018/02/01 Python
pandas中DataFrame修改index、columns名的方法示例
2019/08/02 Python
Python3.7+tkinter实现查询界面功能
2019/12/24 Python
Pytorch Tensor的统计属性实例讲解
2019/12/30 Python
Python OpenCV去除字母后面的杂线操作
2020/07/05 Python
python interpolate插值实例
2020/07/06 Python
希尔顿酒店中国网站:Hilton中国
2017/03/11 全球购物
俄罗斯Sportmarket体育在线商店:用于旅游和户外活动
2019/11/12 全球购物
Linux面试经常问的文件系统操作命令
2015/11/05 面试题
Weblogic和WebSphere不同特点
2012/05/09 面试题
签约仪式主持词
2014/03/19 职场文书
《荷花》教学反思
2014/04/16 职场文书
人与自然观后感
2015/06/16 职场文书
三好学生竞选稿
2015/11/21 职场文书
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python
码云(gitee)通过git自动同步到阿里云服务器
2022/12/24 Servers