438 votes

Chaîne de JavaScript à la conversion de tableau

Petite question. Comment puis-je convertir une chaîne en tableau JS ?

Regardez le code :

Dans ce cas, serait popup une . Alors qu’il serait un tableau, il serait popup une et quand est appelée, elle devrait popup la `` .

Est-il possible de convertir cette chaîne en un tableau JS ?

768voto

I Hate Lazy Points 18168

Pour de simples membres du groupe comme cela, vous pouvez utiliser JSON.parse.

var array = JSON.parse("[" + string + "]");

Cela vous donne un Tableau de nombres.

[0, 1]

Si vous utilisez .split(),, vous vous retrouverez avec un Tableau de chaînes de caractères.

["0", "1"]

Juste être conscient que JSON.parse vous limitera la prise en charge des types de données. Si vous avez besoin des valeurs comme l' undefined ou fonctions, vous devez utiliser eval(), ou un parser JavaScript.


Si vous souhaitez utiliser .split(), mais vous voulez aussi un Tableau de Nombres, vous pouvez utiliser Array.prototype.map, si vous avez besoin de cale pour IE8 et inférieur ou il suffit d'écrire une traditionnelle boucle.

var array = string.split(",").map(Number);

154voto

Alex K. Points 67805

Split sur la `` de caractère ;

23voto

Raghav Chaubey Points 11

Pour les membres de groupe simples comme celui-ci, vous pouvez utiliser JSON.parse.

 var listValues = "[{\"ComplianceTaskID\":75305,\"RequirementTypeID\":4,\"MissedRequirement\":\"Initial Photo Upload NRP\",\"TimeOverdueInMinutes\":null}]";

var array = JSON.parse("[" + listValues + "]");
 

Cela vous donne un tableau de nombres.

maintenant votre valeur de variable est comme array.length = 1

Valeur de sortie

 array[0].ComplianceTaskID
array[0].RequirementTypeID
array[0].MissedRequirement
array[0].TimeOverdueInMinutes
 

20voto

dm03514 Points 20748

vous pouvez utiliser split. http://www.w3schools.com/jsref/jsref_split.asp

"0,1".split(',')

12voto

Dan Mantyla Points 560

utilisez la fonction de carte intégrée avec une fonction anonyme, comme ceci:

 string.split(',').map(function(n) {return Number(n);});
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X