Ich habe ein Array wie unten:
var sphValues = [1, 2, 3, 4, 5];
dann muss ich über Array wie folgt konvertieren:
var sphValues = ['1', '2', '3', '4', '5'];
Wie kann ich konvertieren? Ich habe dies für die automatische Vervollständigung verwendet.
javascript
arrays
Gihansalith
quelle
quelle
sphValues.map(String)
[1,2,3,4,5].toString().split(",")
Antworten:
Sie können map verwenden und den String- Konstruktor als Funktion übergeben, die jede Zahl in einen String verwandelt:
sphValues.map(String) //=> ['1','2','3','4','5']
Dadurch werden sphValues nicht mutiert. Es wird ein neues Array zurückgegeben.
quelle
nur mit Array-Methoden
var sphValues = [1,2,3,4,5]; // [1,2,3,4,5] sphValues.join().split(',') // ["1", "2", "3", "4", "5"]
quelle
Verwendung
Array.map
:var arr = [1,2,3,4,5]; var strArr = arr.map(function(e){return e.toString()}); console.log(strArr); //["1", "2", "3", "4", "5"]
Bearbeiten:
Besser
arr.map(String);
als @elclanrs in den Kommentaren erwähnt zu verwenden.quelle
for(var i = 0; i < sphValues.length; i += 1){ sphValues[i] = '' + sphValues[i]; }
quelle
Verwenden Sie
.map()
in diesem Kontext einen besseren Schritt, und Sie können den folgenden Code wie folgt verwenden, um die Lesbarkeit Ihres Codes zu verbessern.sphValues.map(convertAsString); function convertAsString(val) { return val.toString(); }
quelle
var value; for (var i = 0; i < data3.sph.length; i++) { value = data3.sph[i]; //sphValues[i] = data3.sph[i]; var obj = { label: value }; sphValues.push(obj); }
Sie können diese Methode für die automatische Vervollständigung verwenden. Ich denke, Ihr Problem wird gelöst, aber es wird nicht konvertieren, wie Sie wollen, es wird konvertieren, wie
["label": "val1", "label": "val2"]
quelle
Sie können einfach ein '' anhängen, um es in einen Zeichenfolgentyp zu konvertieren.
var sphValues = [1,2,3,4,5]; for(var itr = 0; itr<sphValues.length;itr++){ sphValues[itr] = '' + sphValues[itr]; }
quelle
ES6-Lösung
const nums = [1, 2, 3, 4, 5]; const strs = Array.from(nums.join(``)); console.log(strs);
quelle