Json是什么,Json就是javascript对象或者数组格式的字符串,Http协议不能传递JavaScript对象,所以要转换为字符串进行传输。
AJAX传递复杂数据如果自己进行格式定义的话会经历组装、解析的过程,因此AJAX中有一个事实上的数据传输标准JSon。Json(是一个标准,就像XML一样,Json规定了对象以什么样的格式保存为一个字符串)将复杂对象序列化为一个字符串,在浏览器端再将字符串反序列化为JavaScript可以读取的对象。Json被几乎所有语言支持。Json就是一个把对象(js、java、.net)表示为字符串的标准。
JavaScript对象(键值对) var person= {name:'rupeng',age:8};
JavaScript数组:var names = ['rupeng','qq','taobao'];
JavaScript对象数组:var persons = [{name:'rupeng',age:8}, {name:'qq',age:15}, {name:'taobao',age:10}];
JavaScript对象关联:var p = {name:'yzk',child:{name:'timi',age:1}};

如何把json字符串转换为js对象:var obj = eval("a("+data+")")。举例:普通对象、数组、对象数组、多对象关联。
(*)安全性问题,如果不用jquery,新版浏览器都原生支持JSON.parse,不支持的引用json2.js也就可以了
C#中将.Net对象序列化为Json字符串的方法:JavaScriptSerializer().Serialize(p)。.Net对象→json字符串→JavaScript对象。
JavaScriptSerializer在System.Web.Extensions.dll中。Json.Net
C#中的匿名类: var p = new { Id=5,Name="rupeng"} 通过反编译看到其实还是生成一个类。

ashx代码:

public void ProcessRequest(HttpContext context)
{context.Response.ContentType = "text/html";//序列化字符串数组string[] strs = { "www.rupeng.com", "www.baidu.com", "www.qq.com" };JavaScriptSerializer jss = new JavaScriptSerializer();string json = jss.Serialize(strs);context.Response.Write(json);//序列化匿名类var p = new { ID = 0, Name = "syfpc", Height = 180 };JavaScriptSerializer jss = new JavaScriptSerializer();string json = jss.Serialize(p);context.Response.Write(json);//序列化List集合List<string> list = new List<string>();list.Add("aaa");list.Add("bbb");list.Add("ccc");JavaScriptSerializer jss = new JavaScriptSerializer();string json = jss.Serialize(list);context.Response.Write(json);
}

javascript代码:

<script type="text/javascript">$(function () {MyAjax("JsonTest.ashx",function (resTxt) {var strs = eval("(" + resTxt + ")");//alert(strs.Name);//获取类的value值for (var i = 0; i < strs.length; i++) {alert(strs[i]);}}, function (status) {})});
</script>

转载于:https://www.cnblogs.com/genesis/p/4691489.html

Json简介与转换数据例子相关推荐

  1. Android系统 (190)---Android:JSON 简介 amp; 解析方式 讲解(Gson、AS自带org.json、Jackson)

    Android:JSON 简介 & 解析方式 讲解(Gson.AS自带org.json.Jackson) 前言 现今最主流的数据交换格式 非 JSON莫属 今天,我将全面介绍 JSON &am ...

  2. PHP数组和Json之间的转换

    之所以要用到Json,很多时候是因为使用ajax对象时,程序与JS函数之间的数据交互.因为JS不认识PHP中的数组,PHP也不认识JS中的数组或对象.Json很好的解决了这个问题. Json简介 JS ...

  3. oracle 纵列 转 横列,oracle sql小结(主要讲横列转换的例子)decode 以及case

    --建表 create table kecheng ( id NUMBER, name VARCHAR2(20), course VARCHAR2(20), score NUMBER ); --插入数 ...

  4. Python中的JSON简介

    您知道如何从在线API传输数据或将不同类型的数据存储到本地计算机吗?无论以何种方式,您都会沉浸在JSON中,JSON代表[Java Script Object Notation].它是一种著名的流行数 ...

  5. 【Qt】Qt中JSON简介

    00. 目录 文章目录 00. 目录 01. JSON简介 02. JSON Support in Qt 03. JSON类 04. 附录 01. JSON简介 1.1 JSON概述 JSON(Jav ...

  6. JSON简介,语法,在html中应用

    JSON简介 1,json(JavaScript Object Notation)是一种轻量级的文本数据交换格式而非编程语言, 其语法只支持字符串,数值,布尔值及null以及在次基础上的对象和数组. ...

  7. SpringMVC json/xml自动转换

    为什么80%的码农都做不了架构师?>>>    前言 SpringMVC是目前主流的Web MVC框架之一. 如果有同学对它不熟悉,那么请参考它的入门blog:http://www. ...

  8. alibaba 实体转json_JAVA中使用alibaba fastjson实现JSONObject、Object、Json字符串的转换...

    Object转JSON字符串: String jsonStr = JSONObject.toJSONString(object); JSON字符串转JSONObject: JSONObject jso ...

  9. Json简介与基本使用

    前言 本文为Json简介与基本使用相关知识,下边具体将对什么是JSON,XML与JSON的区别,JSON的语法格式,JSON数据的转换(包括:Java对象转换为JSON格式.JSON格式转换为Java ...

  10. 第一章 Caché JSON 简介

    文章目录 第一章 Caché JSON 简介 简介 Caché JSON功能 在运行时创建和操作动态实体 使用字符串JSON构造函数创建动态实体 使用Caché动态表达式定义值 在动态实体和规范JSO ...

最新文章

  1. C# 的tcp Socket设置自定义超时时间
  2. 网络营销——网络营销专员浅析网站快照更新要点
  3. VC学习笔记 -单选按钮控件(Ridio Button)的使用
  4. idea怎么搜索文件——search everywhere
  5. ACM组队训练记录(Grooming)
  6. Linux中常用的操作指令(随时更新)
  7. 第三章用sql语句操作数据
  8. 科​目​三​智​能​考​试​系​统​实​际​道​路​考​试​项​目​评​判​标​准
  9. la环球乐园里的机器人_北京环球度假区核心工程完工,你知道这里面都有什么主题景区吗?...
  10. amap vueamap 与_vue 使用高德地图vue-amap组件过程解析
  11. 7-11便利店都脏成这样了,我的午饭还靠它
  12. 怎么捡自己空投_“吃鸡”里信号枪子弹可以复制?玩家发现神秘技巧,空投捡到手软...
  13. Use // eslint-disable-next-line to ignore the next line.解决办法
  14. 你了解语音识别技术吗?
  15. SSL Pining Mode 设置iOS SSL 连接安全
  16. Angr安装与使用之使用篇(十三)
  17. java xml解析 jdom_Java XML解析工具 JDOM介绍及使用实例
  18. VS 2017安装教程
  19. 上研究生学计算机去河大学校好不好,河南大学研究生,河南大学研究生值得读吗?...
  20. 服务过美国总统竞选的非传统投票UI【demo已放出】

热门文章

  1. 大群就是公共场所,不要有事就在大群说
  2. 平时多流汗,战时少流血
  3. GstElement的sink/src有什么区别?
  4. LINUX修改.bashrc之后,生效的办法
  5. 一个简单进程池的实现
  6. java 接口编程iservices_java – 通用接口
  7. 如何查看注解实现_SpringBoot的注解@ConditonOnClass注解是如何实现的?
  8. C# 滑块长度确认 Scrollbar滑块长度问题 水平垂直滚动条滑块高度宽度问题
  9. 关于C#的sqlite数据库操作类
  10. 计算机的创新产品,这几种电脑创新功能 空有喝彩没人买