繁体   English   中英

如何更改 javascript 中嵌套数组对象的值

[英]How to Change value of nested array objects in javascript

我想根据 id 更改检查值,请帮我解决这个问题。我将传递一个 id,它必须在 sub_cat 中的每个 object 中匹配,如果找到任何结果,则更改检查值

  "data": [
            {
                "id": "1",
                "name": "Electrical Repair & installation",
                "parent_id": "0",
                "image": "assets/images/Group66.png",
                "checked": "false",
                "sub_cat": [
                    {
                        "id": "7",
                        "name": "Sockets",
                        "parent_id": "1",
                        "image": "assets/images/Group66.png",
                        "checked": "false"
                    },
                    {
                        "id": "8",
                        "name": "Fans",
                        "parent_id": "1",
                        "image": "assets/images/Group67.png",
                        "checked": "true"
                    }
                ]
            },
         
           
        ]
  
yourObject.data[0].find(item => item.id === id_your_looking_for).checked = "true"

Ofc,您可以将其包装在 function 中并添加检查是否找到项目,但我将其留给您:)

正如您所说,您将根据一些 id 进行检查。 我添加了一个变量作为chkID来检查sub_cat parent_id 您可以根据您的要求进行检查。

let chkID =1;
data.map(res => res.sub_cat.find((subItem) =>{ if(subItem.parent_id==chkID){
             subItem.checked = true;
             }}))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM