JSON入门指南--客户端处理JSON

在传统的Web开发过程中,前端工程师或者后台工程师会在页面上写后台的相关代码,比如在ASP.NET MVC4里面写如下代码:


这样的代码有优点,当然也有缺点。缺点就是前后端分离的不彻底,前端工程师需要了解一些后台的代码,而已在不能把前
端和后台都分开开发和部署。采用JSON就可以解决这一问题。就是前端和后台交换数据的格式都采用JSON。JSON:JavaScript
Object
Notation的缩写,是一种基于JavaScript的字面量表达式的数据格式类型。在ECMAScript第5版标准中也包含了JSON这一类型。

JSON能够通过4种基本数据类型以及2种数据结构化数据类型来表示。4种基本数据类型是:字符串值型,数值型,布尔型和null型。结构化数据类型是对象和数组这两种。举例如下:

数据类型 举例
字符串 “test”
数值 123
布尔型 true或者false
null值 null
对象 {"x":1,"y":2,"val":"foobar"}
数组 {1,2,true,'hello'}

 

开发过程中,很多操作都包含了JSON格式数据类型的字符串与JavaScript对象间的相互转换。在Ajax提
交表单时,需要将内部的对象转换JSON字符串之后再传输。而在接收JSON数据端,需要先将JSON字符串转换为JavaScript对象之后,才能不
借助第三方类库对其值进行操作。在浏览器不支持JSON.stringify()和JSON.parse()方法之前,开发者都会使用json2.js在
前端处理JSON字符串和JSON对象之间的转换。下面举例说明,将JSON字符串转换对象,将对象转换为JSON字符串。

//将JSON字符串转换对象

var s='{"x":1,"y":2,"val":"foobar"}';    var obj=JSON.parse(s);

//将对象转换JSON字符串

var test=JSON.stringify({x:1,y:2,val:'foobar'});console.log(test);

在实际开发过程中,经常使用JSON数组,和包含数组的JSON,如下代码所示:

var result=JSON.parse('[{"name":"aaa","age":"20","gender":"female"},{"name":"bbb","age":"21","gender":"male"},{"name":"ccc","age":"22","gender":"male"}]');                        for(var index in result){                document.write(result[index].name);            }                        var result1=JSON.parse('{"counts":5,"items":["aaa","bbb","ccc","ddd"]}');//包含数组的JSON字符串            console.log(result1.counts);                        for(var index in result1.items){                console.log(result1.items[index]);            }

以上仅讨论客户端,也就是浏览器里面如何JSON,在后台开发过程中,也需要解析JSON,或者把C#,PHP或者Java的数据内容生成JSON。下一篇博客主要介绍这个内容。

时间: 2024-10-15 13:26:10

JSON入门指南--客户端处理JSON的相关文章

JSON 入门指南 想了解json的朋友可以看下_json

尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web Services,否则,在普通的 Web 应用中,开发者经常为 XML 的解析伤透了脑筋,无论是服务器端生成或处理 XML,还是客户端用 JavaScript 解析 XML,都常常导致复杂的代码,极低的开发效率.实际上,对于大多数 Web 应用来说,他们根本不需要复杂的 XML 来传输数据,XML 的扩展性很少具有优势,许多 AJAX 应用甚至直接返回 HTML 片段来构建动态 Web 页面.和返回 XML 并解

JSON入门指南--服务端处理JSON

平时公司使用的ASP.NET MVC3来开发Web项目,其实在ASP.NET中已经原生的支持JSON.所以基本不需要引进Newtonsoft.Json.dll.下面看在 MVC4中,后台生成JSON数据,前端使用Ajax调用.然后就是前端使用POST请求,发送JSON格式,后台程序来处理. 1.后台生成JSON格式数据,前端使用Ajax调用 后台代码: public JsonResult GetList() { ArrayList eventlist = new ArrayList(); for

《Redis入门指南》一4.5 管道

4.5 管道 Redis入门指南 客户端和Redis使用TCP协议连接.不论是客户端向Redis发送命令还是Redis向客户端返回命令的执行结果,都需要经过网络传输,这两个部分的总耗时称为往返时延.根据网络性能不同,往返时延也不同,大致来说到本地回环地址(loop back address)的往返时延在数量级上相当于Redis处理一条简单命令(如LPUSH list 1 2 3)的时间.如果执行较多的命令,每个命令的往返时延累加起来对性能还是有一定影响的. 在执行多个命令时每条命令都需要等待上一

asp.net ajax json入门教程与详细实例

asp教程.net ajax json入门教程与详细实例json简介 在正式讨论json格式之前,首先让我们简要回忆一下xml.xml是"可扩展的标记语言"的简称,它提供了定义web中一系列数据传输协议的方式,是文本型的,被人们誉为"完全开发internet和web潜力的理想方式". 那么,为什么asp.net教程 ajax中还要引入json呢?还是让我们先来观察一下例子吧.比如当前web页面将从后台载入一些通讯录的信息,这些信息如果写成xml,可能是如下形式: &

spring mvc-android客户端发送json body ,报415错误。。

问题描述 android客户端发送json body ,报415错误.. @RequestMapping(value = ""/test""method = RequestMethod.POST consumes=""application/json"")@ResponseBodypublic String test(@RequestBody GoodsBean mGoodsBean) { System.out.println

android studio-android客户端解析json,出现乱码 ( 没有中文 ) ,请大神指点

问题描述 android客户端解析json,出现乱码 ( 没有中文 ) ,请大神指点 本人使用Tomcat apache-tomcat-8.0.28虚拟服务器,默认utf-8编码 update.json {"versionName":"2.0","versionCode":2,"description":"Hello word!!","downloadUrl":"http://

json 入门基础教程 推荐_json

如果您阅读了本系列前面的文章,那么应已对数据格式有了相当的认识.前面的文章解释了在许多异步应用程序中如何恰当地使用纯文本和简单的名称/值对.可以将数据组合成下面这样的形式: firstName=Brett&lastName=McLaughlin&email=brett@newInstance.com   这样就行了,不需要再做什么了.实际上,Web 老手会意识到通过 GET 请求发送的信息就是采用这种格式. 然后,本系列讨论了 XML.显然,XML 得到了相当多的关注(正面和负面的评价都有

Simple JSON开发指南_java

Simple JSON是Google开发的Java JSON解析框架,基于Apache协议. json-simple的主页:http://www.jb51.net/softs/455885.html 下载的文件是:json_simple.jar 例子1:很方便的方式,使用JSONValue System.out.println("=======decode======="); String s="[0,{\"1\":{\"2\":{\&

springmvc 返回json格式给客户端的问题

问题描述 最近学习了springmvc 使用@responseBody注解以son格式返回消息,但是通过http解析器解析,response 返回的是text/html类型在网上找了好久也没有找到解决的办法js代码:function login() {$.ajax({type : "post",contentType : "application/json;charset=UTF-8",url : "/springmvc1/user/login"