将Javascript对象及其内部的对象数组提交给API

时间:2018-10-15 03:23:49

标签: javascript arrays json object axios

大家好,

我需要有关如何提交内部带有对象数组的对象的帮助,并且该对象数组应该来自我已完成的复选框。

这是我的示例复选框

<input type="checkbox" name="user.preferences" value="Hard" />
<input type="checkbox" name="user.preferences" value="Soft" />
<input type="checkbox" name="user.preferences" value="Small" />

我的数据javascript如下:

user:{ 
    preferences: [] 
}

当我使用user提醒JSON.stringify时,我可以看到类似这样的结果。

{"preferences": ["Soft","Small"]}

但是问题是,我正在使用的api需要这样的格式:

{
    "preferences": [
     {
         "preference": "Hard"
     },
     {
         "preference": "Soft"
     },
     // so on and so forth
    ]
}

请有人帮助我。谢谢

1 个答案:

答案 0 :(得分:6)

您应该.map中的每个字符串preferences到以preference作为键/值的对象:

const user = {
  "preferences": ["Soft", "Small"]
};
user.preferences = user.preferences
  .map(preference => ({ preference }));
console.log(user);