JSON格式字串和物件之間的轉換程式碼

antzone發表於2017-03-12

有時候需要將物件直接量轉換成JSON格式字串,或者把字串轉換成物件,下面是一段函式程式碼能夠實現此功能,和大家分享一下,希望能夠給需要的朋友帶來一定的幫助,程式碼如下:

[HTML] 純文字檢視 複製程式碼
<script type="text/javascript"> 
var ele={ 
  theNum:2046, 
  theStr:'螞蟻部落', 
  theObj:{theNum:2046,theStr:'螞蟻部落'} 
} 
toJSON=function(obj){ 
  var arr=[]; 
  for(var key in obj){ 
    var value=obj[key]; 
    if(value==null){ 
      value=''; 
    }
    else{ 
      value=(typeof value==='string'||typeof value==='number')?('"'+value+'"'):toJSON(value); 
    } 
    var str='"'+key+'":'+value; 
    arr.push(str); 
  } 
  return '{' + arr.join(',') + '}'; 
} 
var str=toJSON(ele); 
alert('轉換成的字串是:'+str ); 
var newEle=eval('('+str+')'); 
alert('解析字串得到物件:x='+newEle.theNum+',y='+newEle.theStr+',z='+newEle.theObj); 
</script>

以上程式碼建立一個轉換函式toJSON,此函式能夠將物件直接量轉換成json格式字串,當然json格式字串使用eval()函式就可以再轉換成json格式物件,程式碼比較簡單,這裡就不多介紹了,如有任何問題可以跟帖留言。

相關閱讀:

1.push()參閱JavaScript push()一章節。

2.join()函式可以參閱JavaScript join()一章節。

相關文章