Recuerda que en la informática un problema casi siempre tiene varias resoluciones, por lo tanto nosotros aquí enseñamos lo más óptimo y eficiente.
Solución:
No hay ninguna función para esto en Javascript. Tienes que escribir tu propia función como esta.
var arr = ["nid":"31","0":"tid":"20","name":"Bench Press","objectDate":"2012-02-08","goal":"rep","result":"55.00","comments":"sick!","maxload":"250","1":"tid":"22","name":"Back Squat","objectDate":"2012-02-08","goal":"time","result":"8.00","comments":"i was tired.","maxload":"310","nid":"30","0":"tid":"19","name":"Fran","objectDate":"2012-02-07","goal":"time","result":"5.00","comments":null];
function filterByProperty(array, prop, value)
var filtered = [];
for(var i = 0; i < array.length; i++)
var obj = array[i];
for(var key in obj)
if(typeof(obj[key] == "object"))
var item = obj[key];
if(item[prop] == value)
filtered.push(item);
return filtered;
var byName = filterByProperty(arr, "name", "Fran");
var byGoal = filterByProperty(arr, "goal", "time");
la pregunta es sobre multidimensional arreglos Si te gusto, te perdiste que aquí hay soluciones para arreglos normales...
2020
filteredArray = array.filter(item => item.name.indexOf('Fran') > -1);
o
filteredArray = array.filter(function(item)
return item.name.indexOf('Fran') > -1);
versión 2012
var result = [];
for (var i = 0; i < array.length; i++)
if (array[i].name === 'Fran')
result.push(array[i]);
Crearía una función para filtrar. :
function filter(array, key, value)
var i, j, hash = [], item;
for(i = 0, j = array.length; i
Una solución más sólida podría ser agregar un método de filtro al prototipo:
`This prototype is provided by the Mozilla foundation and
is distributed under the MIT license.
http://www.ibiblio.org/pub/Linux/LICENSES/mit.license`
if (!Array.prototype.filter)
Array.prototype.filter = function(fun /*, thisp*/)
var len = this.length;
if (typeof fun != "function")
throw new TypeError();
var res = new Array();
var thisp = arguments[1];
for (var i = 0; i < len; i++)
if (i in this)
var val = this[i]; // in case fun mutates this
if (fun.call(thisp, val, i, this))
res.push(val);
return res;
;
Entonces simplemente llama:
function filterName (item, index, array)
return (item.name === "Fran");
var result = object.filter(filterName);
Aquí tienes las comentarios y valoraciones
Te invitamos a añadir valor a nuestra información colaborando tu veteranía en las interpretaciones.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)