📄 json 入门指南.htm
字号:
width=2></TD>
<TD><A class=left-nav-child
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#N1012F">服务器端输出
JSON 格式数据 </A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="JSON 入门指南.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#N10193">小结
</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="JSON 入门指南.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#download">下载</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="JSON 入门指南.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#resources">参考资料
</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="JSON 入门指南.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#author">关于作者</A></TD></TR>
<TR class=left-nav-child-highlight>
<TD><IMG height=8 alt="" src="JSON 入门指南.files/cl-bullet.gif"
width=2></TD>
<TD><A class=left-nav-child
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#rate">对本文的评价</A></TD></TR>
<TR class=left-nav-last>
<TD width=14><IMG class=display-img height=1 alt=""
src="JSON 入门指南.files/c.gif" width=14></TD>
<TD width=136><IMG class=display-img height=19 alt=""
src="JSON 入门指南.files/left-nav-corner.gif"
width=136></TD></TR></TBODY></TABLE><BR>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=related colSpan=2><B class=related>相关链接:</B></TD></TR>
<TR class=rlinks>
<TD><IMG height=8 alt="" src="JSON 入门指南.files/rl-bullet.gif"
width=2></TD>
<TD><A class=rlinks
href="http://www.ibm.com/developerworks/cn/views/web/articles.jsp">Web
development 技术文档库</A></TD></TR><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- No content currently --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
<TR>
<TD width=14><IMG class=display-img height=1 alt=""
src="JSON 入门指南.files/c.gif" width=14></TD>
<TD width=136><IMG class=display-img height=19 alt=""
src="JSON 入门指南.files/c.gif" width=136></TD></TR></TBODY></TABLE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- Next Steps Area: Start --><!-- Commented out the include call in the dwmaster version of this file to prevent ajax calls
being made during article previews and testing. Live site has uncommented copy of this file (jpp) --><!-- Call Next Steps Servlet -->
<SCRIPT language=JavaScript type=text/javascript>
<!--
/*
* ajaxInclude makes a call to the url and render the results in the div tag specified in divId
*/
function ajaxInclude(url, divId) {
var req = newXMLHttpRequest();
if (req) {
req.onreadystatechange = getReadyStateHandler(req,
function (result) {
var contents = document.getElementById(divId);
if (result != null && result.length > 0 && contents != null) {
contents.innerHTML = result;
}
});
req.open("GET", url, true);
req.send("");
}
}
//-->
</SCRIPT>
<!-- Display Next Steps Result -->
<DIV id=nextsteps></DIV><!-- Initiate Next Steps Call -->
<SCRIPT language=JavaScript type=text/javascript>
<!--
ajaxInclude("/developerworks/niagara/jsp/getNiagaraContent.jsp?url="+window.location.href,"nextsteps");
//-->
</SCRIPT>
<!-- Next Steps Area: End --><!--END RESERVED FOR FUTURE USE INCLUDE FILES--></TD><!--LEFTNAV_END-->
<TD width="100%">
<TABLE id=content-table cellSpacing=0 cellPadding=0 width="100%"
border=0><TBODY>
<TR vAlign=top>
<TD width="100%">
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD><A name=main><IMG height=1 alt=跳转到主要内容
src="JSON 入门指南.files/c.gif" width=592
border=0></A></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top>
<TD width=10 height=18><IMG height=18 alt=""
src="JSON 入门指南.files/c.gif" width=10></TD>
<TD width="100%"><IMG height=6 alt=""
src="JSON 入门指南.files/c.gif" width=1><BR><A class=bctl
href="http://www.ibm.com/developerworks/cn/">developerWorks
中国</A><SPAN class=bct> > </SPAN><A
class=bctl
href="http://www.ibm.com/developerworks/cn/web/">Web
development</A><SPAN class=bct> ></SPAN><IMG
height=1 alt="" src="JSON 入门指南.files/c.gif" width=1><BR>
<H1>JSON 入门指南 </H1><IMG class=display-img height=6 alt=""
src="JSON 入门指南.files/c.gif" width=1></TD>
<TD class=no-print width=192><IMG height=18 alt=developerWorks
src="JSON 入门指南.files/dw.gif"
width=192></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR vAlign=top>
<TD width=10><IMG height=1 alt="" src="JSON 入门指南.files/c.gif"
width=10></TD>
<TD width="100%">
<TABLE class=no-print cellSpacing=0 cellPadding=0 width=160
align=right border=0>
<TBODY>
<TR>
<TD width=10><IMG height=1 alt="" src="JSON 入门指南.files/c.gif"
width=10></TD>
<TD>
<TABLE cellSpacing=0 cellPadding=0 width=150 border=0>
<TBODY>
<TR>
<TD class=v14-header-1-small>文档选项</TD></TR></TBODY></TABLE>
<TABLE class=v14-gray-table-border cellSpacing=0 cellPadding=0
border=0>
<TBODY>
<TR>
<TD class=no-padding width=150>
<TABLE cellSpacing=0 cellPadding=0 width=143 border=0>
<SCRIPT language=JavaScript type=text/javascript><!--document.write('<tr valign="top"><td width="8"><img src="//www.ibm.com/i/c.gif" width="8" height="1" alt=""/></td><td width="16"><img alt="将打印机的版面设置成横向打印模式" height="16" src="//www.ibm.com/i/v14/icons/printer.gif" width="16" vspace="3" /></td><td width="122"><p><b><a class="smallplainlink" href="javascript:print()">打印本页</a></b></p></td></tr>');//--></SCRIPT>
<NOSCRIPT></NOSCRIPT>
<FORM name=email
action=https://www.ibm.com/developerworks/secure/email-it.jsp><INPUT
type=hidden
value="JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文将快速讲解 JSON 格式,并通过代码示例演示如何分别在客户端和服务器端进行 JSON 格式数据的处理。"
name=body><INPUT type=hidden value="JSON 入门指南 "
name=subject><INPUT type=hidden value=cn name=lang>
<SCRIPT language=JavaScript type=text/javascript><!--document.write('<tr valign="top"><td width="8"><img src="//www.ibm.com/i/c.gif" width="8" height="1" alt=""/></td><td width="16"><img src="//www.ibm.com/i/v14/icons/em.gif" height="16" width="16" vspace="3" alt="将此页作为电子邮件发送" /></td><td width="122"><p><a class="smallplainlink" href="javascript:document.email.submit();"><b>将此页作为电子邮件发送</b></a></p></td></tr>');//--></SCRIPT>
<NOSCRIPT>
<TBODY>
<TR vAlign=top>
<TD width=8><IMG height=1 alt=""
src="JSON 入门指南.files/c.gif" width=8></TD>
<TD width=16><IMG height=16 alt=""
src="JSON 入门指南.files/c.gif" width=16></TD>
<TD class=small width=122>
<P><SPAN class=ast>未显示需要 JavaScript
的文档选项</SPAN></P></TD></TR></NOSCRIPT></FORM>
<TR vAlign=top>
<TD width=8><IMG height=1 alt=""
src="JSON 入门指南.files/c.gif" width=8></TD>
<TD width=16><IMG height=16 alt=""
src="JSON 入门指南.files/dn.gif" width=16 vspace=3
border=0></TD>
<TD width=122>
<P><A class=smallplainlink
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#download"><B>样例代码</B></A></P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- this content will be automatically generated across all content areas --><!--END RESERVED FOR FUTURE USE INCLUDE FILES--><BR></TD></TR></TBODY></TABLE>
<P>级别: 初级</P>
<P><A
href="http://www.ibm.com/developerworks/cn/web/wa-lo-json/#author">廖
雪峰</A>, 撰稿人<BR></P>
<P>2008 年 8 月 22 日</P>
<BLOCKQUOTE>JSON 即 JavaScript Object
Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文将快速讲解 JSON
格式,并通过代码示例演示如何分别在客户端和服务器端进行 JSON 格式数据的处理。 </BLOCKQUOTE><!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
<P>尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web Services,否则,在普通的 Web
应用中,开发者经常为 XML 的解析伤透了脑筋,无论是服务器端生成或处理 XML,还是客户端用 JavaScript 解析
XML,都常常导致复杂的代码,极低的开发效率。实际上,对于大多数 Web 应用来说,他们根本不需要复杂的 XML 来传输数据,XML
的扩展性很少具有优势,许多 AJAX 应用甚至直接返回 HTML 片段来构建动态 Web 页面。和返回 XML 并解析它相比,返回
HTML 片段大大降低了系统的复杂性,但同时缺少了一定的灵活性。 </P>
<P>现在, JSON 为 Web 应用开发者提供了另一种数据交换格式。让我们来看看 JSON 到底是什么,同 XML 或 HTML
片段相比,JSON 提供了更好的简单性和灵活性。 </P>
<TABLE cellSpacing=0 cellPadding=0 width="40%" align=right
border=0><TBODY>
<TR>
<TD width=10><IMG height=1 alt="" src="JSON 入门指南.files/c.gif"
width=10></TD>
<TD>
<TABLE cellSpacing=0 cellPadding=5 width="100%" border=1>
<TBODY>
<TR>
<TD bgColor=#eeeeee><A name=N10063><B>Ajax
资源中心</B></A><BR>
<P>请访问 <A
href="http://www.ibm.com/developerworks/cn/ajax/">Ajax
资源中心</A>,这是有关 Ajax 编程模型信息的一站式中心,包括很多文档、教程、论坛、blog、wiki
和新闻。任何 Ajax
的新信息都能在这里找到。</P></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<P><A name=N10072><SPAN class=atitle>JSON 数据格式解析 </SPAN></A></P>
<P>和 XML 一样,JSON 也是基于纯文本的数据格式。由于 JSON 天生是为 JavaScript 准备的,因此,JSON
的数据格式非常简单,您可以用 JSON 传输一个简单的 String,Number,Boolean,也可以传输一个数组,或者一个复杂的
Object 对象。 </P>
<P>String,Number 和 Boolean 用 JSON 表示非常简单。例如,用 JSON 表示一个简单的 String “
abc ”,其格式为:</P>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
<TBODY>
<TR>
<TD class=code-outline><PRE class=displaycode>"abc"</PRE></TD></TR></TBODY></TABLE><BR>
<P>除了字符 <CODE>"</CODE>,<CODE>\</CODE>,<CODE>/</CODE>
和一些控制符(<CODE>\b</CODE>,<CODE>\f</CODE>,<CODE>\n</CODE>,<CODE>\r</CODE>,<CODE>\t</CODE>)需要编码外,其他
Unicode 字符可以直接输出。下图是一个 String 的完整表示结构:</P><BR><A name=N100A7><B>图 1.
String 的完整表示结构 </B></A><BR><IMG alt=" 图 1. String 的完整表示结构 "
src="JSON 入门指南.files/fig001.jpg"> <BR>
<P>一个 Number 可以根据整型或浮点数表示如下:</P><BR><A name=N100B6><B>图 2. Number
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -