当前位置: 首页 > 知识库问答 >
问题:

JS-如何将所有键转换为其值(来自对象)

吕学
2023-03-14

我有这样的东西(我从API获得它,所以我不能改变它):

{ one: [ { price: ['$10'], weight: ['1000'], color: ['red'] } ],
  two: [ { price: ['$20'], weight: ['2000'], color: ['green'] } ],
  three: [ { price: ['$30'], weight: ['3000'], color: ['blue'] } ] }

我想将所有的“价格”、“重量”和“颜色”键转换为它的值,如下所示:

{ one: [ '$10', '1000', 'red' ],
  two: [ '$20', '2000', 'green' ],
  three: [ '$30', '3000', 'blue' ] }

有什么简单的方法可以做到这一点吗?

编辑:示例已修复
Edit2:所需结果已修复

共有1个答案

贝德辉
2023-03-14

您可以使用键映射,并将所需属性映射到内部数组中。

var object = { one: [ { price: ['$10'], weight: ['1000'], color: ['red'] } ], two: [ { price: ['$20'], weight: ['2000'], color: ['green'] } ], three: [ { price: ['$30'], weight: ['3000'], color: ['blue'] } ] };

Object.keys(object).forEach(function (k) {
    object[k] = [ 'price', 'weight', 'color'].map(function (p) {
        return object[k][0][p][0];
    });
});

console.log(object);
css lang-css prettyprint-override">.as-console-wrapper { max-height: 100% !important; top: 0; }
 类似资料:
  • 我有一个简单的JSON对象{“a”:{“key1”:“value1”,“key2”:“value2”,“key3”:“value3”},我想用一列“Key”将其转换成行。问题是我事先不知道钥匙的名字,或者有多少。换句话说,可能有“键4”、“键5”。也可能有“xyz1”:“xyz1”作为“a”对象中的键/值。我可以用JavaScript迭代这个JSON对象,但我这里的任务是,假设这个JSON对象作为

  • 问题内容: 我想将对象数组转换为javascript中具有键值对的对象。 我如何将其转换为诸如 我希望大多数浏览器都支持它。 问题答案: 您可以使用和传播语法来创建具有给定对象数组的单个对象。

  • 我要转换如下所示的对象: 键值对的数组,如下所示: 如何在JavaScript中将对象转换为键值对数组?

  • 问题内容: 我想这样转换一个对象: 分成键值对数组,如下所示: 如何在JavaScript中将对象转换为键值对数组? 问题答案: 您可以使用和执行此操作

  • 我需要使用jolt spec在JSON中将(多个)键转换为值,将值转换为键。做这件事的正确规范应该是什么? 输入: 所需输出:

  • 我有一个JSON格式。 我希望将其转换为以下格式的对象: