如何在 JavaScript 中将字符串转换为对象数组

Muh*_*eel 7 javascript arrays object node.js

这是Option 1|false|Option 2|false|Option 3|false|Option 4|true我想将其转换为这样的对象数组的字符串

这在 javaScript Nodejs 中是可能的吗????提前致谢。

[
  {
    "option": "Option 1",
    "value": false
  },
  {
    "option": "Option 2",
    "value": false
  },
  {
    "option": "Option 3",
    "value": false
  },
  {
    "option": "Option 4",
    "value": true
  }
]
Run Code Online (Sandbox Code Playgroud)

Nin*_*olz 16

您可以拆分和迭代数组。

const
    string = 'Option 1|false|Option 2|false|Option 3|false|Option 4|true',
    result = [];

for (let i = 0, a = string.split('|'); i < a.length; i += 2) {
    const
        option = a[i],
        value = JSON.parse(a[i + 1]);
    result.push({ option, value });
}

console.log(result);
Run Code Online (Sandbox Code Playgroud)

  • 有趣的是,reduce 女王这次使用了 for 循环。但是当您跳过每个第二个元素时可能会更快 (3认同)