Bonjour,
SVP, comment je peux convertir une chaîne de caractères en un tableau(array) en JavaScript.
Supposant que j’ai le code suivant:
var string = "0,1,2";
var tab = [string];
alert(tab[0]);
Dans ce cas, alerte affiche 0,1,2. Si c’était un tableau, il afficherait 0. Et si alert(tab[1]) est appelé, il devrait afficher 1.
Y a une méthode pour convertir une telle chaîne de caractères en un tableau JavaScript ?
Isaac
Mai 29, 2022, 2:46
2
Vous pouvez utiliser la méthode JSON.parse() pour convertir une chaîne de caractères en un tableau en JavaScript .
var tab = JSON.parse("[" + str + "]");
Vous obtiendrez un tableau de chiffres.
[0, 1, 2]
Si vous utilisez .split() , vous vous retrouverez avec un tableau de chaînes de caractères.
["0", "1"]
Si vous voulez utiliser .split() , mais que vous voulez également un tableau de nombres, vous pouvez utiliser Array.prototype.map()
var string = "0,1,2";
var tab = str.split(",").map(Number);
Essayez le code suivant pour convertir une chaîne de caractères en un tableau en JavaScript :
var string = "0,1,2";
var array = string.split(",");
alert(array[0]);
Henri
Mai 29, 2022, 2:50
4
Méthode 1:
Ceci est facilement réalisable dans ES6 ;
Vous pouvez convertir des chaînes en tableaux avec Array.from('string')
;
Array.from("0,1,2")
Cela retournera:
['0', '1', '2']
Méthode 2:
Ou bien, Vous pouvez utiliser la syntaxe Spread de javascript pour convertir une chaîne en un tableau. Dans la solution ci-dessous, je supprime la virgule puis je convertis la chaîne en tableau.
var string = "0,1,2"
var tab = [...string.replace(',', '')]
console.log(tab[0])
Si la chaîne est déjà au format liste, vous pouvez utiliser la fonction JSON.parse :
var arr = "['a', 'b', 'c']";
arr = arr.replace(/'/g, '"');
arr = JSON.parse(arr);
Si ça ne fonctionne pas vous pouvez essayer le code suivant:
var str = "['a', 'b', 'c']";
let arr = stringObject.replace('[','').replace(']','').split(",").map(str);