国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

JS對(duì)象序列化成json數(shù)據(jù)和json數(shù)據(jù)轉(zhuǎn)化為JS對(duì)象的代碼

2019-11-19 15:41:50
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

JS對(duì)象序列化成json數(shù)據(jù):

function Serialize(obj){     switch(obj.constructor){       case Object:         var str = "{";         for(var o in obj){           str += o + ":" + Serialize(obj[o]) +",";         }         if(str.substr(str.length-1) == ",")           str = str.substr(0,str.length -1);          return str + "}";          break;        case Array:                var str = "[";          for(var o in obj){            str += Serialize(obj[o]) +",";          }          if(str.substr(str.length-1) == ",")            str = str.substr(0,str.length -1);          return str + "]";          break;        case Boolean:          return "/"" + obj.toString() + "/"";          break;        case Date:          return "/"" + obj.toString() + "/"";          break;        case Function:          break;        case Number:          return "/"" + obj.toString() + "/"";          break;         case String:          return "/"" + obj.toString() + "/"";          break;        }    }   var staff_list_obj  ={};  var staff_id   = 1001;  staff_list_obj[staff_id]  = {};  staff_list_obj[staff_id]["姓名"] = '111';  staff_list_obj[staff_id]["測(cè)試"] = '222';  alert(Serialize(staff_list_obj));

JS對(duì)象序列化為JSON對(duì)象的方法二

var $ = $ || {};/**  * 將JS對(duì)象序列化為JSON字符串  * @param {Mixed} o The variable to decode  * @return {String} The JSON string  * String json = $.encode(o);  */ $.encode = (function() {  if ( typeof(JSON)!=='undefined' && typeof(JSON.stringify)!=='undefined') {    return JSON.stringify;  }  var I = !!{}.hasOwnProperty, _ = function(I) {    return I < 10 ? "0" + I : I;  }, A = {    "/b" : "http://b",    "/t" : "http://t",    "/n" : "http://n",    "/f" : "http://f",    "/r" : "http://r",    "/"" : "http:///"",    "http://" : "http:////"  };  return (function(C) {    if (typeof C == "undefined" || C === null) {      return "null";    } else {      if (Object.prototype.toString.call(C) === "[object Array]") {        var B = ["["], G, E, D = C.length, F;        for (E = 0; E < D; E += 1) {          F = C[E];          switch (typeof F) {            case "undefined" :            case "function" :            case "unknown" :              break;            default :              if (G) {                B.push(",");              }              B.push(F === null ? "null" : $.encode(F));              G = true;          }        }        B.push("]");        return B.join("");      } else {        if ((Object.prototype.toString.call(C) === "[object Date]")) {          return "/"" + C.getFullYear() + "-" + _(C.getMonth() + 1) + "-" + _(C.getDate()) + "T" + _(C.getHours()) + ":" + _(C.getMinutes()) + ":" + _(C.getSeconds()) + "/"";        } else {          if (typeof C == "string") {            return "/"" + C.replace(/([/x00-/x1f//"])/g, function(B, _) {              var I = A[_];              if (I) {                return I;              }              return '';            }).replace(/[^/u0000-/u00FF]/g, function($0) {              return escape($0).replace(/(%u)(/w{4})/gi, "http://u$2")            }) + "/"";          } else {            if (typeof C == "number") {              return isFinite(C) ? String(C) : "null";            } else {              if (typeof C == "boolean") {                return String(C);              } else {                B = ["{"], G, E, F;                for (E in C) {                  if (!I || C.hasOwnProperty(E)) {                    F = C[E];                    if (F === null) {                      continue;                    }                    switch (typeof F) {                      case "undefined" :                      case "function" :                      case "unknown" :                        break;                      default :                        if (G) {                          B.push(",");                        }                        B.push($.encode(E), ":", $.encode(F));                        G = true;                    }                  }                }                B.push("}");                return B.join("");              }            }          }        }      }    }  });})();

json數(shù)據(jù)轉(zhuǎn)化為JS對(duì)象:

var jsonString={....}/[....];eval("var obj="+jsonString);alert(obj);

寫道

function evalJSON(json){ var obj = null; try { obj = eval("(" + json + ")"); } catch(E){} return obj ; }

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 太仓市| 桃源县| 望谟县| 唐山市| 阿瓦提县| 故城县| 上虞市| 武汉市| 太仆寺旗| 清新县| 定州市| 张北县| 深泽县| 德清县| 聂拉木县| 永登县| 教育| 巨野县| 东安县| 阳朔县| 汕尾市| 庆云县| 河源市| 当阳市| 阿尔山市| 上犹县| 凤台县| 宿松县| 延川县| 辉县市| 南漳县| 香港| 疏勒县| 中江县| 安阳市| 甘肃省| 昭平县| 司法| 鄂托克旗| 运城市| 平舆县|