Maison >interface Web >js tutoriel >Comment puis-je convertir efficacement des objets JSON à touches numériques en tableaux en JavaScript ?

Comment puis-je convertir efficacement des objets JSON à touches numériques en tableaux en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-13 09:24:12148parcourir

How Can I Efficiently Convert Numeric-Keyed JSON Objects to Arrays in JavaScript?

Conversion d'objets à touches numériques en tableaux

Lorsque vous travaillez avec des réponses JSON qui incluent des objets avec des touches numériques, vous devrez peut-être convertir les dans des tableaux. Bien que les solutions courantes impliquent des boucles complexes, il existe des approches plus efficaces et plus simples.

$.map de jQuery

Une méthode utilise $.map de jQuery. function:

var arr = $.map(obj, function(el) { return el });

Cette méthode parcourt les propriétés de l'objet et renvoie le correspondant valeurs.

Array.map

Sans jQuery, vous pouvez utiliser Array.map avec Object.keys :

var arr = Object.keys(obj).map(function(k) { return obj[k] });

Ici, Object. .keys convertit les clés de l'objet en tableau et Array.map récupère les valeurs associées à celles-ci. clés.

Object.values ​​(ES2015)

En JavaScript moderne (ES2015 et versions ultérieures), Object.values ​​propose une solution succincte :

var arr = Object.values(obj);

Cette fonction renvoie directement un tableau des objets de l'objet valeurs.

Remarque :

Ces méthodes supposent que la réponse JSON a déjà été analysée en tant qu'objet JavaScript. S'il est toujours au format de chaîne JSON, vous devrez d'abord utiliser JSON.parse :

var obj = JSON.parse(jsonString);
var arr = Object.values(obj);

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn