یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دورهها
استفاده از تخفیفهاسلام. من یک لیست دارم. بعضی اوقات قسمت children آرایه خالی دریافت میکنم. میخوام اگه آرایه خالی بود کلا آبجکت داخلی حدف بشه
const items= [{name:"test1",children:[{name:"child1", children:[{name:"sub-child1"}]},{name:"child2", children:[]}]}]
یعنی آرایه بالا باید تغیییر پیدا کنه به
const items= [{name:"test1",children:[{name:"child1", children:[{name:"sub-child1"}]}]}]
ممنون میشم کمکم کنید
@kamran.davar
سلام. این به صورت تو در تو تا بینهایت delete رو انجام میده.
const items = [
{
name: 'test1',
children: [
{ name: 'child1', children: [{ name: 'sub-child1' }] },
{ name: 'child2', children: [] },
],
},
];
const recursiveDelete = (arr) => {
arr.map((item, index) => {
if (!item.children || item.children.length == 0) {
arr.splice(index, 1);
}
if (item.children && item.children.length !== 0) {
recursiveDelete(item.children);
}
});
};
recursiveDelete(items);
console.log(items);
شما می تونید با استفاده از
https://jsonformatter.curiousconcept.com/
آرایه هاتون رو بهتر کنید.
[
{
"name":"test1",
"children":[
{
"name":"child1",
"children":[
{
"name":"sub-child1"
}
]
},
{
"name":"child2",
"children":[
]
}
]
}
]
[
{
"name":"test1",
"children":[
{
"name":"child1",
"children":[
{
"name":"sub-child1"
}
]
}
]
}
]
لطفا بگید خروجی از کجا میاد.
سوال رو هم بد پرسیدم. یک لیست مثل لیست زیر هست. میخوام اون رو جوری فیلتر کنم که isEmpty= true ها حذف بشن
let arr =[{name:"Report" , children:[{name:"KPI" , isEmpty:true} , {name:"fuel", isEmpty:fale}]}]
سلام @parastooebrahimi
const items = [
{
name: "test1",
children: [
{ name: "child1", children: [{ name: "sub-child1" }] },
{ name: "child2", children: [] },
],
},
];
for (var i = 0; i < items[0].children.length ; i++){
if (items[0].children[i].children.length == 0){
delete items[0].children[i]
}
}
سلام. این به صورت تو در تو تا بینهایت delete رو انجام میده.
const items = [
{
name: 'test1',
children: [
{ name: 'child1', children: [{ name: 'sub-child1' }] },
{ name: 'child2', children: [] },
],
},
];
const recursiveDelete = (arr) => {
arr.map((item, index) => {
if (!item.children || item.children.length == 0) {
arr.splice(index, 1);
}
if (item.children && item.children.length !== 0) {
recursiveDelete(item.children);
}
});
};
recursiveDelete(items);
console.log(items);
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟