分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

先来看一个JSON字符串集

var data="
{
root:
[
{name:'1',value:'0'},
{name:'6101',value:'A城市'},
{name:'6102',value:'B城市'},
{name:'6103',value:'C城市'},
{name:'6104',value:'D城市'},
{name:'6105',value:'E城市'}

]
}";

怎么将上述json字符串转化为json对象呢?

使用eval()这个内置函数,该方式也适合以普通js方式获取json对象。

var dataObj=eval("("+data+")");
alert(dataObj.root.length);
$.each(dataObj.root,fucntion(idx,item){
        if(idx==0){
              return true; 
        }
       alert("name:"+item.name+",value:"+item.value);
});

为什么eval这里要添加("("+data+")") ?

由于json是以{ }的方式来开始以及结束的,在eval中会被当成一个语句块来处理,故必须强制将它转换成一种表达式。

加上圆括号是使eval函数在处理时强制将括号内的表达式(expression)转化为对象而不作为语句(statement)来执行。

若不加外层的括号,eval会将大括号识别为js代码块的开始和结束标记,{ }将会被认为执行了一句空语句。

alert(eval("{}")
结果 undefined

alert(eval("({})")
结果 object[Object]

来看看eval其他用法

eval("alert('xy')");

等价于alert("xy")

var msg = "xy";

eval("alert(msg)");

等价于alert("xy")

eval("x=10;y=20;document.write(x*y)")

结果 200

eval就相当于一个js解析器,很牛哦

原帖地址:http://www.cnblogs.com/myjavawork/archive/2011/03/10/1979279.html

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

javascript中eval解析JSON字符串相关推荐

  1. JSON字符串在Java和JavaScript中的解析和转换

    JSON字符串在Java和JS种的转换 1. JSON字符串格式 2. JSON 在 Java 中的转换 2.1 FastJSON 使用 2.2 Jackson 使用 2.3 Gson 使用 2.4 ...

  2. js反序列化html编码,JavaScript实现的反序列化json字符串操作示例

    本文实例讲述了JavaScript实现的反序列化json字符串操作.分享给大家供大家参考,具体如下: JavaScript中如何反序列化json字符串呢? 有如下两种方法: (1) 使用万能的eval ...

  3. JavaScript中eval()和$.parseJSON()的区别和联系以及JSON.stringify()的区别

    JavaScript中eval()和$.parseJSON()的区别和联系以及JSON.stringify()的区别 一.第一个区别是:安全性 json格式非常受欢迎,而解析json的方式通常用JSO ...

  4. js使用eval解析json(js中使用json)

    eval的用法eval函数接收一个参数s,如果s不是字符串,则直接返回s.否则执行s语句,下面给出eval解析json的示例 先来说eval的用法,内容比较简单,熟悉的可以跳过 eval函数接收一个参 ...

  5. javascript解析json字符串,各种格式分析

    javascript解析json字符串,各种格式分析 JS,JSON,EVAL函数说明 JSON.parse(字符串) 方法用于将一个 JSON 字符串转换为对象 JSON.stringify(对象或 ...

  6. qt中解析json字符串的时候出现错误missingNameSeperator

    概述 当解析json字符串,编译代码的时候没有问题,但是当程序调式运行到解析json字符串的时候,即这句: QJsonParseError parseError;QJsonDocument doc = ...

  7. C++ 取json中的某一个值,解析json字符串

    C++ 取json中的某一个值,解析json字符串 C++编程中遇到了需要经常从json中取某一项,又不想用json库文件实现,只能靠自己封装方法 例如这个json {"date" ...

  8. js解析json字符串、对象与json之间的转换

    前言 在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键. js解析json字符串 // JSON字符串 'v ...

  9. jquery parseJSON()方法解析json字符串

    在web项目开发中,前端经常需要接收后端传送来的json数据,解析json字符串,再对页面进行渲染.使用jquery解析json字符串通常需要将json字符串转化为javascript的json对象( ...

  10. cjson构建_[置顶] cJSON库(构建json与解析json字符串)-c语言

    一.c语言获取json中的数据. 1.先要有cJOSN库,两个文件分别是cJSON.c和cJSON.h. 2.感性认识 char * json = "{ \"json\" ...

最新文章

  1. 面向对象设计:共性VS个性-------继承的粒度和聚合的粒度以及类的重构
  2. python3 字符串大小写转换
  3. java线程通信概念_java基础线程总结(线程概念、线程创建方式、线程间通信、线程重要方法)...
  4. Leetcode 134. 加油站 解题思路及C++实现
  5. 6.分布式数据库HBase第2部分
  6. python表达式的值是 y 和n是什么意思_python中^是什么意思
  7. Xamarin.Android 隐藏软键盘
  8. Linux下禁止使用swap及防止OOM机制导致进程被kill掉
  9. Apache 开启伪静态模块
  10. 计算机无法创建新文件夹,无法创建文件,小编教你无法新建文件夹怎么办
  11. java socket输入输出流
  12. 修改element插件样式---select样式
  13. [SSL_CHX][2021-08-25]车厢重组
  14. 无人机编程donekit及通讯(一)
  15. 在线运行java测试
  16. WannaCry勒索病毒处理指南
  17. 《Kotin 极简教程》第9章 轻量级线程:协程(2)
  18. Python迭代器、生成器、map以及reduce
  19. 项目案列:银行ATM存款机系统(笔记经典案列)
  20. 基于kali的一次无线渗透测试

热门文章

  1. 闭包——抽象解释的简单注释
  2. 解决asp数据库对象只读的办法
  3. 计算机网络领悟摩尔定,计算机网络等133信息技术展望P15-P17.PPT
  4. ubantu删除文件(夹)
  5. Java学习笔记day01
  6. 【转】Google Chrome浏览器调试
  7. 解决Zarp报错,成功运行
  8. POJ 2187 凸包旋转卡壳
  9. 进一步理解windows任务管理器
  10. CentOS下Vim编辑器的使用