En javascript, j'ai actuellement:
"[11,8,7,6,5,4 "
Je voudrais le convertir en ["11", "8", "7", "6", "5", "4"]. J'ai essayé d'utiliser .split () sur la chaîne mais cela ne renvoie pas le résultat souhaité, ainsi que toutes les autres tentatives. Merci
6 Réponses :
En utilisant la méthode match de la chaîne et cette expression régulière / \ d + / g , vous obtiendrez la sortie attendue.
var string = "[11,8,7,6,5,4]"; var result = string.match(/\d+/g); console.log(result);
Le moyen le plus rapide: (Mis à jour)
JSON.parse("[11,8,7,6,5,4]").map(String)
ou, vous pouvez également le faire .map (String)
Il semble que vous recherchiez ceci:
console.log(eval("[11,8,7,6,5,4]").map(String))
let array = JSON.parse("[11,8,7,6,5,4]");
let arrayOfStrings = array.map(item => `${item}`);
console.log('array', array);
console.log('arrayOfStrings', arrayOfStrings);
PS: j'ai utilisé les fonctions fléchées, vous pouvez passer à la syntaxe fonctionnelle de base.
Bien que ce code puisse résoudre le problème du PO, il est préférable d'inclure une explication sur la façon dont votre code résout le problème du PO. De cette manière, les futurs visiteurs peuvent apprendre de votre publication et l'appliquer à leur propre code. SO n'est pas un service de codage, mais une ressource de connaissances. De plus, les réponses complètes et de haute qualité sont plus susceptibles d'être votées. Ces fonctionnalités, ainsi que l'exigence que tous les messages soient autonomes, sont quelques-unes des forces de SO en tant que plate-forme, qui le différencie des forums. Vous pouvez modifier pour ajouter des informations supplémentaires et / ou pour compléter vos explications avec la documentation source.
Bien que cet extrait de code puisse résoudre la question, inclure une explication aide vraiment à améliorer la qualité de votre message. N'oubliez pas que vous répondez à la question aux lecteurs à l'avenir, et que ces personnes pourraient ne pas connaître les raisons de votre suggestion de code.
Merci, je suis totalement d'accord avec votre opinion et modifierai ma réponse.
Vous pouvez utiliser une boucle for pour les convertir en chaînes si c'est tout ce que vous voulez:
for(num of numArray){
num = num.toString();
}
var obj = JSON.parse("[11,8,7,6,5,4]");
var out=obj.map(String);
console.log(out);
Parse the data with JSON.parse(), and the data becomes a JavaScript object. (https://www.w3schools.com/js/js_json_parse.asp)
.map function is like apply function of python or R, which acts on each element of the incoming array using the function defined within the parentheses; i.e. The map() method creates a new array with the results of calling a function for every array element. (https://www.w3schools.com/jsref/jsref_map.asp)
Bien que ce code puisse résoudre le problème du PO, il est préférable d'inclure une explication sur la façon dont votre code résout le problème du PO. De cette manière, les futurs visiteurs peuvent apprendre de votre publication et l'appliquer à leur propre code. SO n'est pas un service de codage, mais une ressource de connaissances. De plus, les réponses complètes et de haute qualité sont plus susceptibles d'être votées. Ces fonctionnalités, ainsi que l'exigence que tous les messages soient autonomes, sont quelques-unes des forces de SO en tant que plate-forme, qui le différencie des forums. Vous pouvez modifier pour ajouter des informations supplémentaires et / ou pour compléter vos explications avec la documentation source.
Est-ce que cela répond à votre question? Convertir la chaîne avec des virgules en tableau
pouvez-vous montrer du code de ce que vous avez essayé avec split ()?