Je veux trier un objet/tableau JSON (représenté ci-dessous par myArray
), sur des valeurs d'un autre tableau - très proche de la requête MYSQL MYSQL WHERE IN(1,2,3)
. J'ai été en mesure d'obtenir un great answer by Nick Craver sur la façon de trier par une propriété et la valeur, mais comment puis-je le faire avec plusieurs valeurs de mon autre tableau?jQuery/JS: Tableau de tri basé sur un autre tableau?
Voici mon ensemble de données tableau JSON:
var myArray = [
{
"id":"2",
"name":"My name",
"properties":{"prop1":"value1"}
}];
Et le tableau que je veux trier sur (sérialisé, provenant d'une forme droite):
var sortArray = [ { "prop1":"value1","prop2":"value2" }];
Le courant fonction de tri comme il semble en ce moment (avec la permission de Nick Craver):
function filterDataset(property, value){
var newArray = [];
for (var i = 0, l = myArray.length; i < l; i++) {
if (myArray[i].properties[property] === value)
newArray.push(myArray[i]);
}
return newArray;
}
erreur petite dans la fonction - maintenant corrigée. – Industrial
Peut-être que vous devriez clarifier votre objectif. Il semble que vous vouliez trier les éléments d'un tableau, mais votre tableau donné n'a qu'un seul élément. –
Salut! Le tableau n'a qu'un seul élément pour devenir un peu plus lisible. Je veux trier le tableau 'myArray' comme si je faisais une comparaison' || ', comme l'utilisateur 500894 suggère ci-dessous, mais avec un nombre inconnu de propriétés .. – Industrial