jQuery - 将元素列表更改为关联数组

发布于 2024-09-04 20:00:02 字数 684 浏览 2 评论 0原文

给定一个关联数组(由 jQuery.serializeArray() 返回的类型),如下所示:

[
{ 'name': 'abc', 'value': 'aaa', '__proto__': [Object] },
{ 'name': 'def', 'value': 'bbb', '__proto__': [Object] },
{ 'name': 'abc', 'value': 'ccc', '__proto__': [Object] }
]

如何使用 jQuery 或仅使用 javascript 将其转换为 名称的关联数组:[ value] 像这样:

{
   'abc': ['aaa', 'ccc'],
   'def': ['bbb']
}

这似乎本质上是这个问题的反面:根据另一个关联数组的值构建关联数组...但使用 Javascript(不是 PHP)。我在 Stackoverflow 上找不到这个问题,尽管我认为有人会问这个问题。

感谢您的阅读。

布莱恩

Given an associative array (of the sort returned by jQuery.serializeArray()) like this:

[
{ 'name': 'abc', 'value': 'aaa', '__proto__': [Object] },
{ 'name': 'def', 'value': 'bbb', '__proto__': [Object] },
{ 'name': 'abc', 'value': 'ccc', '__proto__': [Object] }
]

How can one convert this, using either jQuery or just javascript, to an associative array of name: [values] like this:

{
   'abc': ['aaa', 'ccc'],
   'def': ['bbb']
}

This seems to essentially be the inverse of this question: Build associative array based on values of another associative array... but in Javascript (not PHP). I wasn't able to find this question on Stackoverflow, though I thought it would have been asked.

Thank you for reading.

Brian

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

往事随风而去 2024-09-11 20:00:02

您只需迭代对象,检查结果中是否存在名称,然后存储或推送该值,例如:

var result = {};
$.each(arr, function (index, el) {
  if (!result[el.name]) {
    result[el.name] = [el.value];
  } else {
    result[el.name].push(el.value);
  }
});
//{"abc":["aaa","ccc"], "def":["bbb"]}

You just have to iterate over the objects, check if the name exist on the result, and store or push the value, e.g.:

var result = {};
$.each(arr, function (index, el) {
  if (!result[el.name]) {
    result[el.name] = [el.value];
  } else {
    result[el.name].push(el.value);
  }
});
//{"abc":["aaa","ccc"], "def":["bbb"]}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文