首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jquery插入、更新和删除JSON对象

使用Jquery插入、更新和删除JSON对象
EN

Stack Overflow用户
提问于 2014-02-24 17:38:26
回答 1查看 2.3K关注 0票数 0

我有这个JSON对象。

代码语言:javascript
复制
json_elements = JSON.stringify(obj);

价值是:

代码语言:javascript
复制
  [{"pid":"2","qty":1,"Pname":"Jelly Doughnuts","uniteV":36},{"pid":"34","qty":1,"Pname":"Loukoumades Donuts","uniteV":9},{"pid":"32","qty":1,"Pname":"Bismark Doughnut","uniteV":6},{"pid":"34","qty":1,"Pname":"Loukoumades Donuts","uniteV":9},{"pid":"33","qty":1,"Pname":"Maple Bar Donuts","uniteV":3}]

插入到JSON对象是

代码语言:javascript
复制
                 obj.push({
                        pid: pid,
                        qty: qty,
                        Pname: Pname,
                        uniteV: uniteV
                    });

我的问题是,能告诉我如何准确地更新和删除这个JSON对象的操作吗?

EN

回答 1

Stack Overflow用户

发布于 2014-02-24 20:12:05

因为您用" jquery“标记了这个问题,所以我将使用jquery函数回答这个问题。

我认为您想问的是如何使用jquery更新/删除对象数组中的指定对象(请注意,变量obj实际上是一个对象数组)。jquery函数grep很适合在对象数组中找到正确的对象。一旦在数组中找到正确的对象,就可以简单地更新该对象。

代码语言:javascript
复制
var myArray = obj; //you're really working with an array of objects instead of one objects
var result = $.grep(myArray, function(e){ return e.pid == pidToUpdate; });
if (result.length == 0) {
  // the object wasn't in the array of objects
} else if (result.length == 1) {
  // there was a single matching object, and we can now update whatever attribute we want
  result[0].attributeToUpdate = newValue
} else {
  // multiple items found.  Do with them whatever you want
};

可以使用grep从对象数组中删除对象。或者,您可以像这样使用splice

代码语言:javascript
复制
$.each(myArray, function(i){
  if(myArray[i].pid == pidThatYouWantToDelete) {
      myArray.splice(i,1);
      return false;
  };
});

希望这能有所帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21994889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档