将字符串/查询参数数组转换为键值对,键不属于字符串/查询参数

时间:2020-04-17 22:26:19

标签: javascript arrays

我有一些查询参数

Exterior Color=Red,Interior Color=Mahogany
我最终想要转换为该数组的

            [
                {
                    Question: "Exterior Color",
                    Answer: "Red"
                },
                {
                    Question: "Interior Color",
                    Answer: "Mahogany"
                },
            ]

我已经做到了这一点

[
    "Exterior Color=Red",
    "Interior Color=Mahogany"
]

使用

let optionsArray = itemOptions.split(',').filter(Boolean);

但是在接下来的步骤中碰壁了。

1 个答案:

答案 0 :(得分:1)

也许是这样的:

itemOptions.split(',').filter(Boolean).map(keyvalue => {
  const parts = keyvalue .split('=');
  if(parts.length !== 2) return null;
  return { Question: parts[0],  Answer: parts[1]  };
}).filter(Boolean);
相关问题