首页 > 解决方案 > 在 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
    }
})

标签: jsontypescriptangular6

解决方案


types[types.length - 1]给你的最后一个元素types

如果您调用 forEach 对数组的每个项目执行某项操作,然后执行与最后一项不同的操作,则Array#forEach的回调参数将传递一个索引(作为该项之后的参数)。所以你可以写types.forEach((item, indexForItem) => { ... });,然后比较indexForItemtypes.length - 1看看你是否在最后一个。


推荐阅读