欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

json轉String與String轉json及判斷對象類型示例代碼

 更新時間:2013年10月29日 17:25:23   作者:  
正如標題所言json轉String和String轉json以及判斷對象類型,在網上會搜到很多的相關文章,不過大都介紹的籠統(tǒng),下面有個不錯的示例,感興趣的朋友可以參考下
復制代碼 代碼如下:

function ajaxGetMenuList(){
$.getJSON("login.do", function(json){

var r = "";
zNodes += "[";
$(json.menuList).each(function(i){

r = json.menuList[i];
if(i>0) zNodes += ",";
zNodes += '{';
zNodes += 'id:'+r.SId;
zNodes += ', pId:'+r.SPid;
zNodes += ', name:"'+r.STitle;
if(r.SPid == 0) zNodes += '", open:true';
else zNodes += '"';
zNodes += '}';

})

zNodes += "]";
zNodes = stringToJSON(zNodes);
createTree(zNodes);
});

}

/**
* json轉String
* @param {Object} obj
* @memberOf {TypeName}
* @return {TypeName}
*/
function jsonToString (obj){
var THIS = this;
switch(typeof(obj)){
case 'string':
return '"' + obj.replace(/(["\\])/g, '\\$1') + '"';
case 'array':
return '[' + obj.map(THIS.jsonToString).join(',') + ']';
case 'object':
if(obj instanceof Array){
var strArr = [];
var len = obj.length;
for(var i=0; i<len; i++){
strArr.push(THIS.jsonToString(obj[i]));
}
return '[' + strArr.join(',') + ']';
}else if(obj==null){
return 'null';

}else{
var string = [];
for (var property in obj) string.push(THIS.jsonToString(property) + ':' + THIS.jsonToString(obj[property]));
return '{' + string.join(',') + '}';
}
case 'number':
return obj;
case false:
return obj;
}
}

/**
* String轉json
* @param {Object} obj
* @return {TypeName}
*/
function stringToJSON(obj){
return eval('(' + obj + ')');
}
//判斷對象類型
function getType(x){
if(x==null){
return "null";
}
var t= typeof x;
if(t!="object"){
return t;
}
var c=Object.prototype.toString.apply(x);
c=c.substring(8,c.length-1);
if(c!="Object"){
return c;
}
if(x.constructor==Object){
return c
}
if("classname" in x.prototype.constructor
&& typeof x.prototype.constructor.classname=="string"){
return x.constructor.prototype.classname;
}
return "<unknown type>";
}

相關文章

  • 解決git 提交后中文字符會亂碼的問題

    解決git 提交后中文字符會亂碼的問題

    這篇文章主要介紹了解決git 提交后中文字符會亂碼的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • npm script 的文件監(jiān)聽和自動刷新的命令詳解

    npm script 的文件監(jiān)聽和自動刷新的命令詳解

    文件監(jiān)聽的作用是為了實現自動化,釋放雙手和精力,提高效率,讓開發(fā)者更加關注于開發(fā)。這篇文章主要介紹了npm script 的文件監(jiān)聽和自動刷新,需要的朋友可以參考下
    2019-06-06
  • vscode?ssh遠程連接服務器的思考淺析

    vscode?ssh遠程連接服務器的思考淺析

    這篇文章主要為大家介紹了vscode?ssh遠程連接服務器的思考淺析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-02-02
  • 分享五個最佳編程字體

    分享五個最佳編程字體

    這篇文章主要介紹了分享五個最佳編程字體,需要的朋友可以參考下
    2016-10-10
  • Spark處理trick總結分析

    Spark處理trick總結分析

    這篇文章主要為大家介紹了Spark處理trick總結分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • Cookie 的 SameSite 屬性小結

    Cookie 的 SameSite 屬性小結

    Chrome 51 開始,瀏覽器的 Cookie 新增加了一個SameSite屬性,用來防止 CSRF 攻擊和用戶追蹤,下面在通過本文給大家詳細介紹下SameSite 屬性的相關知識,感興趣的朋友一起看看吧
    2021-10-10
  • 2013年CIO需要知道的八句格言

    2013年CIO需要知道的八句格言

    2013年CIO需要知道的八句格言,更簡單更努力
    2012-12-12
  • Wireshark零基礎使用超詳細教程

    Wireshark零基礎使用超詳細教程

    Wireshark是應用最普遍的一款開源抓包軟件,常用來檢測收集成績、攻打溯源、或許剖析底層通訊機制,本文給大家講解Wireshark零基礎使用超詳細教程,感興趣的朋友一起看看吧
    2023-08-08
  • 對Web開發(fā)人員有用的8個網站小結

    對Web開發(fā)人員有用的8個網站小結

    本文是由比利時的Web開發(fā)人員Jean-Baptiste Jung分享的,Jung還在《Web開發(fā)/設計人員應當知道的15個網站》這篇文章中推薦了15個相關網站
    2011-05-05
  • 詳解HTTP協(xié)議(很經典)

    詳解HTTP協(xié)議(很經典)

    HTTP是一個屬于應用層的面向對象的協(xié)議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統(tǒng)。本文給介紹http 協(xié)議非常經典,需要的朋友參考下吧
    2017-09-09

最新評論