【问题标题】:How to find latest or last element value from array object using jQuery如何使用jQuery从数组对象中查找最新或最后一个元素值
【发布时间】:2021-10-01 17:51:58
【问题描述】:

如何使用 jQuery 根据条件从数组对象中查找最新/最后一个元素值。每个数组对象包含多个项目。就像 Array(0) 对象包含多个具有值的项目一样,Array(1) 也包含多个具有值的项目.....Array(2)...等等。

例如-

Array(0) object has items Name:Ravi ,VisitingDate:20/07/2021.
Array(1) object has items Name:Ravi ,VisitingDate:15/08/2021.
Array(2) object has items Name:Ravi ,VisitingDate:30/09/2021 . 

    

我想使用 JQuery 返回最新或最后一次访问日期值为 30/09/2021,其名称为 Ravi。

我在 JQuery 下面试过了。但它总是从数组中返回 VisitingDate 值的第一个元素为 20/07/2021,这是错误的。它应该从数组中返回最后一个/最新的元素(VisitingDate)值。

if (arryObj.find((o) => { return o["Name"] === "Ravi" }) !== undefined)
 {                        
var VisitDate = arryObj.find((o) => { return  o["Name"] === "Ravi" }).VisitingDate
}

【问题讨论】:

  • 欢迎来到 SO。请尝试输入样本数据和预期输出。它对我们有帮助。感谢您添加您的尝试。
  • 代码的哪一部分指定应该返回最新的日期?
  • 我在问题描述中输入了示例和预期结果。
  • 在 if 条件中存在一个具有 VisitingDate 的代码。根据上面的示例,这应该返回最新的 VisitingDateas 30/09/2021 而不是第一个 VisitingDate 值 .var VisitDate = arryObj.find((o) => { return o["Name"] === "Ravi" } ).访问日期

标签: javascript jquery


【解决方案1】:

使用过滤器:

let array = [];
    array.push({
        'Name':'Ravi',
        'VisitingDate': '20 / 07 / 2021',
    });
    array.push({
        'Name': 'Ravi',
        'VisitingDate': '20 / 07 / 2021',
    });
    array.push({
        'Name': 'Ravi',
        'VisitingDate': '12 / 09 / 2021',
    });
let last_element = array.filter(function (ar) { return ar.Name == 'Ravi' }).at(-1);
console.log(last_element);
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-01
    • 2021-04-14
    • 1970-01-01
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多