Vorrei ottenere il valore minimo da un array. Se il dato contiene il valore null
, Math.min.apply
restituisce 0
per il valore null
. Si prega di vedere this JSFiddle example. Come posso ottenere il valore minimo vero anche se esiste un valore null nell'array?Math.min.apply restituisce 0 per null
codice (come nel JSFiddle esempio):
var arrayObject= [ {"x": 1, "y": 5}, {"x": 2, "y": 2}, {"x": 3, "y": 9}, {"x": 4, "y": null}, {"x": 5, "y": 12} ];
var max = Math.max.apply(Math, arrayObject.map(function(o){return o.y;}));
var min = Math.min.apply(Math, arrayObject.map(function(o){return o.y;}));
$("#max").text(max);
$("#min").text(min);
Non c'è nessun JSON nel tuo esempio ... corretto. –
La funzione 'Math.min' esegue (la funzione interna)' ToNumber() 'su ogni elemento dell'array, che a sua volta costringe i valori a * Numero *. La coercizione fa schifo, lo sapevamo. ': P' –
@ ŠimeVidas semplicemente lasciando la proprietà fuori sarebbe" non definito ", che a sua volta si trasforma in' NaN' che è facilmente filtrato con '.filter (isFinite)' – Esailija