js的序列化和反序列化

(1)序列化javascript

               即js中的Object轉化爲字符串java

               1.使用toJSONStringjson

[javascript] view plain copy
  1. var last=obj.toJSONString(); //將JSON對象轉化爲JSON字符  

              2.使用stringify數組

[javascript] view plain copy
  1. var last=JSON.stringify(obj); //將JSON對象轉化爲JSON字符  

 

(2)反序列化spa

               即js中JSON字符串轉化爲Object.net

               1.使用eval對象

[javascript] view plain copy
  1. var obj=eval("("+data+")");  

             爲何要 eval這裏要添加 "("+data+");//」呢? 
             緣由在於:eval自己的問題。 因爲json是以」{}」的方式來開始以及結束的,在JS中,它會被當成一個語句塊來處理,因此必須強制性的將它轉換成一種表達式。
               2.使用parseJSONblog

[javascript] view plain copy
  1. var obj = data.parseJSON(); //由JSON字符串轉換爲JSON對象  

               3.使用parseip

[javascript] view plain copy
  1. var obj = JSON.parse(data); //由JSON字符串轉換爲JSON對象  



(3)使用場景字符串

               1.向後臺傳遞參數、接收後臺返回值

                  若是後臺返回的是一個String(Object序列化後返回),那麼須要在js中使用eval或者parse等轉化爲Object再使用;

                  若是返回時傳遞了類型,好比就是Object,那麼直接使用就好

               2.在頁面間傳遞數據,特別是數組時

                   須要使用序列化,不然IE會報錯:不能執行已經釋放Script的代碼

相關文章
相關標籤/搜索