javascript - 如何正确获取数组中对象的总长度
问题描述
甚至可以获取数组中所有对象的长度吗?假设我有一个看起来像这样的数组:
var foo = [{
"id": 1,
"path": {
"1": [{
x: 21,
y: 22
}, {
x: 22,
y: 12
}],
"2": [{
x: 21,
y: 22
}, {
x: 22,
y: 12
}]
}
}];
for (let x in foo) {
var path = foo[x].path;
for (let c in path) {
console.log(path[c]);
}
}
我怎样才能在这里正确地获得路径数组内的对象的总长度?
解决方案
尝试找出键的长度:
Object.keys(path[c]).length
var foo = [{
"id": 1,
"path": {
"1": [{
x: 21,
y: 22
}, {
x: 22,
y: 12
}],
"2": [{
x: 21,
y: 22
}, {
x: 22,
y: 12
}]
}
}];
for (let x in foo) {
var path = foo[x].path;
var totalLen = 0;
for (let c in path) {
totalLen += Object.keys(path[c]).length;
}
console.log(totalLen);
}
推荐阅读
- javascript - 我怎样才能以这样的方式解构它,以便我得到一个包含每个月数据的数组
- volusion - 使用 Volusion API 按日期范围导出订单
- java - Hibernate 在 @OneToMany 映射中自己添加不需要的唯一键
- excel - 使用 SheetJS 读取 XLSX 文件后如何获取单元格的字体名称?
- java - 我们不能使用 XOR 操作(通过掩码)来改变第 i 位,而不是做掩码的 (~) 吗?
- reactjs - React 如何用一个 api 请求渲染一个组件两次
- reactjs - 在反应组件中调用外部提取函数
- mysql - 如何在两个联合查询之间设置顺序
- angular - 将角度容器连接到同一主机上的 laravel 容器
- typescript - puppeteer:如何编辑和删除一行?