que tienen una serie como esta (con poco más de 3000 objetos en lugar de los 3 aquí):¿Cuál es la mejor manera de consultar una matriz en javascript para obtener solo los elementos de ella que quiero?
items = [{name:'charlie', age:'16'}, {name:'ben', age:'18'}, {name:'steve', age:'18'}]
¿Cuál es la mejor manera de devolver una matriz con sólo los objetos de las personas que son 18? Así que quiero:
items = [{name:'ben', age:'18'}, {name:'steve', age:'18'}]
Lo mejor que puedo pensar es esta (usando jQuery):
newArray = []
$.each(items, function(index, item) {
if(item.age=='18') {
newArray.push(item)
}
})
Teniendo en cuenta que hay 3.000 miles de objetos, y también que voy a estar haciendo que la comparación hasta cincuenta veces de una vez, eso es mucho bucle. ¿Hay una mejor manera?
Para aclarar más, estoy creando esta matriz en la carga de página inicial desde una base de datos. Esta misma información es necesaria a lo largo de la experiencia, por lo que pensé que acceder a ella desde esta matriz puede ser más rápido que hacer llamadas a la base de datos todo el tiempo. Al final lo necesito al principio, así que supongo que tiene sentido. Corrígeme si hay una mejor manera. –
Ver a continuación: http://stackoverflow.com/questions/777455/is-there-a-query-language-for-json – Brij
Kenny: ¿Has mirado la solución de @ david !!?!? – billy