如果你跟我一样(我担心你就是),那么,到目前为止,这应该是你对JSON的经验:
于是晚上我乘坐了一辆慢腾腾的公交回到家(周五通常都是很慢),然后给自己找了一大堆关于JSON资料。所以我可以文雅的带你进入JSON的大门。 这就开始了 这几个字母是什么意思?JavaScript Object Notation. [一个滑稽的名字。它应该被称作Lightweight Ecmascript Object Notation, 或简称 'LEON'。 ] 它是个什么东西?JSON是一种传递对象的语法,对象可以是name/value对,数组和其他对象。 下面是一小段JSON代码:
你看懂了吧?那么当你再看到它时就知道它是JSON了。主要部分: 花括弧,方括弧,冒号和逗号
把它想成得了厌食症的XML(如果你跟我一样老,可以把它想成有层次关系的.INI文件) (如果你是个自以为是的Lisp小丑,可以把它想成S-expressions,自以为是吧) JSON很像XML,因为:
JSON跟XML不一样,因为:
可是为什么?它有什么好的?当你写ajax之类的东西时,如果你使用JSON,你就勉去了手工拼写XML。更迅速。 同样,当你写ajax之类的东西时,怎样最简单?XML方式还是JSON方式: XML方式:
对比JSON方式:
它是面向对象的吗?No,严格的说,不是。 就像是VB6里的面向对象一样。它提供了很好的封装机制,你可以使用它把数据和方法分离出来,但它不提供任何的继承,多型,接口,或其它类似的面向对象的东西 很显然,它是使javascript变得更易于维护,分析和复用的方向上前进了一步。 Thomas Frank写了一个灵巧的javascript库,叫做classyJSON,它在JSON代码上增加了继承和定义范围等特征。 它只是用在客户端吗? 是,也不是。在服务器端你可以容易的把对象序列化成JSON或反之。对于 3分钟将近结束.就我所知,JSON是由一个叫做Douglas Crockford的家伙发明的。如果你喜欢的话,可以看一下他的网站,他非常的有趣。 现在去读一下懂JSON的人写的东西(从Delicious using JSON上搜刮来的!)
这就是全部。我在几分钟的时间里只能整理出这些东西所有我说的有些东西可能完全是错的。如果是这样,请留言告诉我,告诉我我有多傻。我会很高兴的纠正任何一个错误。祝你好运! (边注:如果你把 { 和 } 替换成 和 /,把: 换成 / 你会得到一个非常像gaXml的东西。有趣的世界。 (边注2:Jason 和 Ajax 都是希腊神话中的英雄。预告:另外一些即将出现的技术垃圾包括:Heracles, Perseus, Deucalion, Theseus and Bellerophon。) |