论坛首页 Web前端技术论坛

一个简单的JSON-ext,对很常见的列表数据,可以节省将近50%的网络带宽

浏览 5000 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-05-17  
常见的列表数据,标准JSON表达法为:


 var locations = [
      {
         "precision": "zip",
         "Latitude":  37.7668,
         "Longitude": -122.3959,
         "Address":   "",
         "City":      "SAN FRANCISCO",
      },
      {
         "precision": "zip",
         "Latitude":  37.371991,
         "Longitude": -122.026020,
         "Address":   "",
         "City":      "SUNNYVALE",
      }
   ];



略微改进的写法:



function location(p1,p2,p3,p4,p5){
  this.precision = p1;
  this.Latitude = p2;
  this.Longitude = p3;
  this.Address = p4;
  this.City = p5;
} 

var locations = [
  new location("zip",37.7668,-122.3959,"","SAN FRANCISCO"),
  new location("zip",37.371991,"","SUNNYVALE")
]



客户端访问数据方式与原先一样。

当然,非javascript的客户端不一定支持这种写法,自己权衡是否值得采用。

这是7wxAop采用的格式,不知道为什么JSON不支持。
   发表时间:2007-05-17  
好是好,但好像不能 直接 eval()
0 请登录后投票
   发表时间:2007-05-17  
如果有N多的参数,这不是一个好的结构
0 请登录后投票
   发表时间:2007-05-17  
这个更像面向对象的方式。更容易理解。
0 请登录后投票
   发表时间:2007-05-17  
myy 写道
好是好,但好像不能 直接 eval()


可以的,都是javascript标准语法
0 请登录后投票
   发表时间:2007-05-17  
sp42 写道
如果有N多的参数,这不是一个好的结构


有什么问题吗?
0 请登录后投票
   发表时间:2007-05-17  
对于我来说,你说的“标准JSON表达法”我也没用到过,我采用下面的结构,主要是用于 ResultSet => Json

{
  "meta" : [
    {"name" : "ID", "type" : "VARCHAR2"...},
    {"name" : "NAME", "type" : "VARCHAR2"...}
  ]
  "data" : [
    ["123","abc"],
    ["124","xyz"]
  ]
}
0 请登录后投票
   发表时间:2007-05-17  
myy 写道
对于我来说,你说的“标准JSON表达法”我也没用到过,我采用下面的结构,主要是用于 ResultSet => Json

{
  "meta" : [
    {"name" : "ID", "type" : "VARCHAR2"...},
    {"name" : "NAME", "type" : "VARCHAR2"...}
  ]
  "data" : [
    ["123","abc"],
    ["124","xyz"]
  ]
}



呵呵,同道中人,7wxAop中也有这种 二维数组 + ResultSetMeta 的输出。

0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics