配列、String、ObjectをJSON形式の内容に変換する、JSON.encode関数

1443 ワード

JSon.Encode関数は、配列、String、ObjectをJSON形式の内容に変換できます.
関数のコード

JSON = { 
  encode : function(input) { 
    if (!input) return 'null' 
    switch (input.constructor) { 
      case String: return '"' + input + '"' 
      case Number: return input.toString() 
      case Boolean: return input.toString() 
      case Array : 
        var buf = [] 
        for (i in input) 
          buf.push(JSON.encode(input[i])) 
            return '[' + buf.join(', ') + ']' 
      case Object: 
        var buf = [] 
        for (k in input) 
          buf.push(k + ' : ' + JSON.encode(input[k])) 
            return '{ ' + buf.join(', ') + '} ' 
      default: 
        return 'null' 
    } 
  } 
}



//配列

var aa = new Array() 
aa[0] = "1111"; 
aa[1] = "dddd" 
alert(JSON.encode(aa))

var s = JSON.encode([1,2,3]); 
alert(s);      // [1,2,3]

var object = JSON.encode([0,1,false,true,null,[2,3],{"some":"value"}]); 
alert(object)

転載先:
http://www.radys.cn/article.asp?id=177