详细解读JSON变量的种种做法

现在, JSON 为Web 应用开发者提供了另一种数据交换格式。让我们来看看 JSON 到底是什么,同 XML 或 HTML 片段相比,JSON变量提供了更好的简单性和灵活性。。。。

 如果我们想将该语句中的值xxx,yyy分别保存在两个变量上,然后传入JSON变量名,该如何设置呢?大概你不会想到这样吧?我没有这样做过,一般的做法为:#t#

 
 
  1. var a="xxx";var b="yyy";var json={a:a,b:b} 

这样做的确挺麻烦的,但当初还真没有好办法。

 
 
  1. var a="xxx",b="yyy";var json="{a:'"+a+"',b:'"+b+"'}";json=eval("("+json+")") 

今天在Ext中看到果真可以使用我们前面的那种写法,json会自动区分冒号前的是json名称值,后面的是传入的JSON变量。这样就简便多了。感叹一下:js语法真是妙!以后可以这样用了: 

 
 
  1. handler : function(){  
  2.     //                input_store.commitChanges();  
  3.                       
  4.                     var lstAddRecord=new Array();   
  5.                     input_store.each(function(record) {  
  6.                         lstAddRecord.push(record.data);  
  7.                     });  
  8.                       
  9.                       
  10.                     Ext.Ajax.request({  
  11.                        url: 'function/rivaldata/rivalDataAction.do?tag=add',  
  12.                        success: function (response,options){  
  13.                                 var objExt.decode(response.responseText) ;  
  14.                                 alert(obj.msg);  
  15.                             },  
  16.                        failure: function(){  
  17.                                alert("failure");  
  18.                        },  
  19.                        //將ext.data.store的所有record轉為JSON格式,傳到服務端  
  20.                        params: {strJson:Ext.encode(lstAddRecord)}  
  21. //                       jsonData:Ext.encode(input_store)  
  22.                     });  
  23.                       
  24. //                    alert(Ext.encode(lstAddRecord));  
  25.                   
  26.                 }  
THE END