Estoy tratando de encontrar el último valor de GDPAnn de la matriz Annual . El siguiente código funciona bien. Pero si GDPAnn no está disponible en el último valor, devuelve undefined . Por ejemplo, quiero el valor 10251000 de GDPAnn de la matriz Annual2 .
var Annual = [{"Date":1998,"Value":4.5,"GDPAnn":9062800},{"Date":1999,"Value":4.8,"GDPAnn":9631200},{"Date":2000,"Value":4.1,"GDPAnn":10251000},{"Date":2001,"Value":1,"GDPAnn":10581900}] x = Annual.map((o) => o.GDPAnn).pop(); console.log(x); var Annual2 = [{"Date":1998,"Value":4.5,"GDPAnn":9062800},{"Date":1999,"Value":4.8,"GDPAnn":9631200},{"Date":2000,"Value":4.1,"GDPAnn":10251000},{"Date":2001,"Value":1}] y = Annual2.map((o) => o.GDPAnn).pop(); console.log(y);Consulte el comentario en el código a continuación: use .filter()
var Annual = [{"Date":1998,"Value":4.5,"GDPAnn":9062800},{"Date":1999,"Value":4.8,"GDPAnn":9631200},{"Date":2000,"Value":4.1,"GDPAnn":10251000},{"Date":2001,"Value":1,"GDPAnn":10581900}] x = Annual.map((o) => o.GDPAnn).pop(); console.log(x); var Annual2 = [{"Date":1998,"Value":4.5,"GDPAnn":9062800},{"Date":1999,"Value":4.8,"GDPAnn":9631200},{"Date":2000,"Value":4.1,"GDPAnn":10251000},{"Date":2001,"Value":1}] // Adding filter here to only include items with the GDPAnn key y = Annual2.filter((o) => o.GDPAnn).map((o) => o.GDPAnn).pop(); console.log(y);Esto podría ser una solución sencilla
var Annual = [{"Date":1998,"Value":4.5,"GDPAnn":9062800},{"Date":1999,"Value":4.8,"GDPAnn":9631200},{"Date":2000,"Value":4.1,"GDPAnn":10251000},{"Date":2001,"Value":1,"GDPAnn":10581900}] x = Annual.map((o) => o.GDPAnn).pop(); console.log(x); var Annual2 = [{"Date":1998,"Value":4.5,"GDPAnn":9062800},{"Date":1999,"Value":4.8,"GDPAnn":9631200},{"Date":2000,"Value":4.1,"GDPAnn":10251000},{"Date":2001,"Value":1}] y = Annual2.filter(o=> o.GDPAnn).map((o) => o.GDPAnn).pop(); console.log(y);let y = Annual2.reduce((prev, curr) => curr.GDPAnn ? curr : prev).GDPAnn