JS地图生成双方括号

发布于 2025-01-21 19:46:34 字数 1207 浏览 2 评论 0原文

我用以下内容合并子阵列:

var myArray = [
        {
            "QuestionId": 1,
            "mySeries": [{ "name": "Male", "data": [1] }],
            "mySeries1": [
                { "name": "Male", "data": [0] },
                { "name": "Female", "data": [0] },
                { "name": "Unknown", "data": [0] }
            ],
            "mySeries3": []
        },
        {
            "QuestionId": 2,
            "mySeries": [{ "name": "Banana", "data": [1] }],
            "mySeries1": [
                { "name": "Orange", "data": [0] },
                { "name": "Banana", "data": [0] },
                { "name": "None", "data": [0] }
            ],
            "mySeries3": []
        }
    ];
    var res = [];
    for (let i = 0; i < myArray.length; i++) {
        res = myArray[i].mySeries1.map(obj => myArray[i].mySeries.find(o => o.name === obj.name) || obj);
        myArray[i].mySeries3.push(res);

它有效;但是,我得到双方括号:

"mySeries3": **[** [
                  { "name": "Orange", "data": [0]},
                  { "name": "Banana","data": [1]},
                  {"name": "None", "data": [0] 
              ]  **]**

推动正确的方式吗?

I use the following to merge sub-arrays:

var myArray = [
        {
            "QuestionId": 1,
            "mySeries": [{ "name": "Male", "data": [1] }],
            "mySeries1": [
                { "name": "Male", "data": [0] },
                { "name": "Female", "data": [0] },
                { "name": "Unknown", "data": [0] }
            ],
            "mySeries3": []
        },
        {
            "QuestionId": 2,
            "mySeries": [{ "name": "Banana", "data": [1] }],
            "mySeries1": [
                { "name": "Orange", "data": [0] },
                { "name": "Banana", "data": [0] },
                { "name": "None", "data": [0] }
            ],
            "mySeries3": []
        }
    ];
    var res = [];
    for (let i = 0; i < myArray.length; i++) {
        res = myArray[i].mySeries1.map(obj => myArray[i].mySeries.find(o => o.name === obj.name) || obj);
        myArray[i].mySeries3.push(res);

It works; however, I get double square brackets:

"mySeries3": **[** [
                  { "name": "Orange", "data": [0]},
                  { "name": "Banana","data": [1]},
                  {"name": "None", "data": [0] 
              ]  **]**

Is push the correct way?

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

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

发布评论

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

评论(1

无声静候 2025-01-28 19:46:34

我用@pilchard``

myArray[i].mySeries3 = myArray[i].mySeries3.concat(res)

起作用了。

I used @pilchard `

myArray[i].mySeries3 = myArray[i].mySeries3.concat(res)

It worked.`

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文