嵌套对象文字返回所有属性的长度吗?

Thrasheremperor

在JSON中,我有不同的sucursales(位置),每个都有不同的autos(汽车)。如何仅用一项功能就能获得所有地点的汽车总数?

[{"sucursal": "Quilmes",
    "direccion": "Av. Hipólito Yrigoyen 80, B1878 Quilmes, Provincia de Buenos Aires",
    "telefono": "(0230) 466-3000",
    "autos": [{
            "marca": "chevrolet",
            "modelo": "camaro",
            "anio": 20120,
            "color": "black"
        },
        {
            "marca": "nissan",
            "modelo": "note",
            "anio": 2020,
            "color": "white"
        },

        {
            "marca": "chevrolet",
            "modelo": "onix",
            "anio": 2019,
            "color": "red"
        },
        {
            "marca": "volkswagen",
            "modelo": "scirocco",
            "anio": 2015,
            "color": "white"
        },
        {
            "marca": "volkswagen",
            "modelo": "golf",
            "anio": 2016,
            "color": "white"
        },
        {
            "marca": "nissan",
            "modelo": "sentra",
            "anio": 2017,
            "color": "black"
        },
        {
            "marca": "citroen",
            "modelo": "c4",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "citroen",
            "modelo": "berlingo",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "peugeot",
            "modelo": "208",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "fiat",
            "modelo": "fiorino",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "toyota",
            "modelo": "etios",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "ford",
            "modelo": "ecosport",
            "anio": 2015,
            "color": "red"
        },
        {
            "marca": "chery",
            "modelo": "tiggo",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "renault",
            "modelo": "sandero",
            "anio": 2020,
            "color": "gray"
        }
    ]
},
{
    "sucursal": "San Miguel",
    "direccion": "Av. Pres. Juan Domingo Perón 2043, B1663 San Miguel, Provincia de Buenos Aires",
    "telefono": "(011) 4451-5565",
    "autos": [{
            "marca": "nissan",
            "modelo": "note",
            "anio": 2018,
            "color": "red"
        },
        {
            "marca": "chevrolet",
            "modelo": "camaro",
            "anio": 2018,
            "color": "white"
        },
        {
            "marca": "chevrolet",
            "modelo": "onix",
            "anio": 2016,
            "color": "gray"
        },
        {
            "marca": "honda",
            "modelo": "civic",
            "anio": 2020,
            "color": "black"
        },
        {
            "marca": "audi",
            "modelo": "a6",
            "anio": 2016,
            "color": "red"
        },
        {
            "marca": "nissan",
            "modelo": "x-trail",
            "anio": 2016,
            "color": "gray"
        },
        {
            "marca": "peugeot",
            "modelo": "2008",
            "anio": 2020,
            "color": "green"
        },
        {
            "marca": "toyota",
            "modelo": "hilux",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "volkswagen",
            "modelo": "saveiro",
            "anio": 2020,
            "color": "blue"
        },
        {
            "marca": "fiat",
            "modelo": "golf",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "fiat",
            "modelo": "palio",
            "anio": 2017,
            "color": "white"
        },
        {
            "marca": "peugeot",
            "modelo": "307",
            "anio": 2020,
            "color": "gray"
        },
        {
            "marca": "renault",
            "modelo": "sandero",
            "anio": 2020,
            "color": "gray"
        }
    ]
}

]

在不同的js中,我可以列出所有位置的所有汽车,但我似乎不能只给我一个总数。

let carList=dataBase.forEach((concesionarias) => {
        concesionarias.autos.forEach((auto) => {
            res.write("   - " + auto.marca + " - " + auto.modelo + " - " + auto.anio + " - " + auto.color + "\n")})
    })
EOL

如果要计算所有位置的所有汽车的总计数,则可以简单地.reduce()从总计数开始0并增加每个autos阵列的长度这是一个数据量减少的示例:

const dataBase = [
    {
        "sucursal": "Quilmes",
        "direccion": "Av. Hipólito Yrigoyen 80, B1878 Quilmes, Provincia de Buenos Aires",
        "telefono": "(0230) 466-3000",
        "autos": [
            {
                "marca": "chevrolet",
                "modelo": "camaro",
                "anio": 20120,
                "color": "black"
            },
            {
                "marca": "renault",
                "modelo": "sandero",
                "anio": 2020,
                "color": "gray"
            }
        ]
    },
    {
        "sucursal": "San Miguel",
        "direccion": "Av. Pres. Juan Domingo Perón 2043, B1663 San Miguel, Provincia de Buenos Aires",
        "telefono": "(011) 4451-5565",
        "autos": [
            {
                "marca": "nissan",
                "modelo": "note",
                "anio": 2018,
                "color": "red"
            }
        ]
    }
];

const totalCount = dataBase.reduce((prev,curr) => {
   return prev + curr.autos.length;
},0)
console.log(`There are ${totalCount} cars in total.`);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从嵌套对象文字返回属性名称

根据嵌套对象字段的长度查找所有文档

为什么长度属性归数组对象所有?

TypeScript - 从对象的所有属性中提取嵌套属性

减少对象数组并返回对象的所有原始属性

从嵌套的对象数组中提取所有特定属性

Dapper嵌套对象查询-不填充所有属性

JavaScript将所有嵌套对象属性设置为null

Javascript如何更新嵌套对象中的所有属性名称

打字稿从嵌套对象中获取属性的所有值

使用反射返回所有对象属性(包括私有)

对象对象数组。获取具有相同属性的所有值的长度

不可变对象的所有属性都必须是最终的吗?

PLSQL:返回对象所有属性的连接字符串

如何遍历所有属性并将值作为对象返回

“for var in”访问 JS 对象返回所有内容 * 但 * 自己的属性?

如何使用Rails Serializer返回对象的所有属性?

遍历对象并返回所有属性数组的值

返回的json数组包含缺少所有属性的对象

无法在 res.send 中返回对象的所有属性

TypeScript / JS-根据所有对象共有的属性对嵌套对象数组进行排序

嵌套对象的所有组合

Javascript-遍历选项数组,并在对象的属性值与options数组中的所有值匹配时返回对象吗?

标记所有对象属性,包括根据需要嵌套的对象

我可以遍历具有未知长度的数组的对象属性吗?

如何遍历具有嵌套属性的 JSON 对象,操作并返回一个新对象?

如何对集合中所有对象的属性执行.Max()并返回具有最大值的对象

Django模型对象有长度函数吗?

Mixin的属性可以成为嵌套对象吗?