1
ccdjh 2013-05-29 01:00:06 +08:00 via iPhone
囧,你手写?
|
3
txlty 2013-05-29 01:31:06 +08:00
array to json函数,各种语言都有吧
json_encode($array); |
5
zhujinliang 2013-05-29 08:24:08 +08:00
唯一跟js中对象写法不同的就是key或字符串都要用双引号包裹,不是么
|
6
lichao 2013-05-29 08:28:09 +08:00
@zhujinliang 说得很对
|
7
liuyao729 2013-05-29 08:48:36 +08:00
好像没怎么错过。严格是好事呀
|
8
BOYPT 2013-05-29 09:11:35 +08:00 1
最恶心的就是手写构建xml/json数据的代码。好端端放着自动编码库不去用,写这样的东西来摧残代码维护者的狗眼
|
9
RisingV 2013-05-29 09:15:24 +08:00
json是我见过最宽松的了,连变量类型都没几个,很适宜人类阅读。ASN.1、XDR那些东西才叫严格复杂了。
|
10
tangzx 2013-05-29 09:20:54 +08:00 1
|
11
davepkxxx 2013-05-29 09:38:14 +08:00
json语法一点都不严格吧。
|
12
yakczh 2013-05-29 10:30:20 +08:00
json属性值 要用引号括起来,js中object就不用
|
13
heroicYang 2013-05-29 10:34:45 +08:00
行数多了之后修改起来要小心谨慎,少掉逗号、引号就麻烦了。所以我一般都是用yaml,然后自动编译为json。
|
14
RisingV 2013-05-29 10:38:58 +08:00
@tangzx 基于string的而不是binary的数据交换格式,要处理各种不同的各种编码,效率上已经吃亏了,优点就是适宜于阅读。再者对于json,效率的问题,语法严格是其次的(为了提高容错性,很多lexer的实现其实对语法要求不严),主要是足够简单。xml语法也很严格,但是它太繁琐了。
|
15
0bit 2013-05-29 18:58:41 +08:00
我们公司用Python,总是看到有人不用json.loads()和json.dumps()而是用eval()和str()。
|
16
lotem 2013-05-29 20:30:03 +08:00
YAML 好。
|
18
RisingV 2013-05-30 09:43:52 +08:00
@yangzh json的标准中根本没有这一条。即便标准是utf8。你能保证你获取的原始数据是utf8吗?你不需要封装的时候转化吗?只要是基于string,都要处理编码。
|
19
ijse 2013-05-30 11:47:48 +08:00
|
20
swulling 2013-05-30 12:11:23 +08:00
@RisingV
http://www.ietf.org/rfc/rfc4627.txt?number=4627 JSON text SHALL be encoded in Unicode. The default encoding is UTF-8. 必须是Unicode,默认是UTF-8,也可以是UTF-16等 |
21
diligence24 2013-05-30 18:35:02 +08:00
对称美~
|