js 操作json对象增删改
//将表单序列化成字符串 $.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);
文章属于个人工作备忘录,欢迎指正...