json - 在 TypeScript 中获取 JSON 数组的最后一个元素
问题描述
我需要获取 JSON 对象数组中最后一个元素的“id”属性的值。我可以通过 id 找到每个元素,但我还需要获取 JSON 对象数组中最后一个“id”的值。在下面的示例中,它是“3”。提前致谢!
let types: any[] =
[
{'id': '0', 'value': ''},
{ 'id': '1', 'value': '' },
{ 'id': '2', 'value': '' },
{ 'id': '3', 'value': '' },
];
let index = 0;
let indexNext = 1;
types.forEach((item) => {
if (item.id == index) {
item.value = 'Book';
console.log(item.value); //Book
}
if (item.id == indexNext) {
item.value = 'Magazine';
console.log(item.value); //Magazine
}
})
解决方案
types[types.length - 1]
给你的最后一个元素types
。
如果您调用 forEach 对数组的每个项目执行某项操作,然后执行与最后一项不同的操作,则Array#forEach的回调参数将传递一个索引(作为该项之后的参数)。所以你可以写types.forEach((item, indexForItem) => { ... });
,然后比较indexForItem
,types.length - 1
看看你是否在最后一个。
推荐阅读
- java - 如何跳过块中的任何错误并继续下一个块项?
- c - 是否可以优化这个嵌套循环?
- python - Pandas 系列的分段线性函数
- concurrency - [ConcurrencyCheck] 修饰是否不起作用?
- javascript - 当我在每个函数调用中创建一个新的生成器时,为什么这个生成器函数包装器会消耗迭代器?
- javascript - 递归函数在循环内打印正确的最终结果,但在外部未定义
- r - 减少 GGPlot 中的边距,plot.margin 有问题
- c# - 使用include Entity Framework core 3.1时如何过滤嵌套对象
- sql-server - 没有管理员权限的 SQLserver 批量上传
- mysql - 从第一行开始插入值