1. 程式人生 > >js操作json object

js操作json object

//將表單序列化成字串

   $.fn.serializeObject = function () {
       var obj = {};
       var count = 0;
       $.each(this.serializeArray(),
           function (i, o) {
               var n = o.name, v = o.value;
               count++;
               obj[n] = obj[n] === undefined
                   ? v
                   : $.isArray(obj[n])
                       ? obj[n].concat(v)
                       : [obj[n], v];
           });
       obj.nameCounts = count + ""; //表單name個數
       return JSON.stringify(obj);
   };

   //新增或者修改json資料
   function setJson(jsonStr, name, value) {
       if (!jsonStr) jsonStr = "{}";
       var jsonObj = JSON.parse(jsonStr);
       jsonObj[name] = value;
       return JSON.stringify(jsonObj);
   }

   //刪除資料
   function deleteJson(jsonStr, name) {
       if (!jsonStr) return null;
       var jsonObj = JSON.parse(jsonStr);
       delete jsonObj[name];
       return JSON.stringify(jsonObj);
   }

   ////生成測試
   //    var myjsonStr = setJson(null,"name","aaa");
   //    alert(myjsonStr);
   ////新增測試
   //    myjsonStr = setJson(myjsonStr,"age",18);
   //    alert(myjsonStr);
   ////修改測試
   //    myjsonStr = setJson(myjsonStr,"age",20);
   //    alert(myjsonStr);
   ////刪除測試
   //    myjsonStr = deleteJson(myjsonStr,"age");
   //    alert(myjsonStr);