Ik heb een array zoals hieronder:
var sphValues = [1, 2, 3, 4, 5];
dan moet ik de bovenstaande array converteren zoals hieronder:
var sphValues = ['1', '2', '3', '4', '5'];
Hoe kan ik converteren?
Ik heb dit gebruikt voor automatisch aanvullen.
Antwoord 1, autoriteit 100%
U kunt kaartgebruiken en geef de String-constructor door als een functie, die elk nummer in een tekenreeks verandert:
sphValues.map(String) //=> ['1','2','3','4','5']
Hiermee worden sphValues niet gemuteerd. Het zal een nieuwe array retourneren.
Antwoord 2, autoriteit 5%
Gebruik 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"]
Bewerken:
Het is beter om arr.map(String);
te gebruiken zoals @elclanrs vermeld in de opmerkingen.
Antwoord 3, autoriteit 5%
gewoon door array-methoden te gebruiken
var sphValues = [1,2,3,4,5]; // [1,2,3,4,5]
sphValues.join().split(',') // ["1", "2", "3", "4", "5"]
Antwoord 4, autoriteit 3%
for(var i = 0; i < sphValues.length; i += 1){
sphValues[i] = '' + sphValues[i];
}
Antwoord 5, autoriteit 3%
Gebruik .map()
in deze context, dat is een betere zet, evenals de onderstaande code, dit zou uw code beter leesbaar maken,
sphValues.map(convertAsString);
function convertAsString(val) {
return val.toString();
}
Antwoord 6
je kunt gewoon een ” toevoegen om het naar een tekenreekstype te converteren.
var sphValues = [1,2,3,4,5];
for(var itr = 0; itr<sphValues.length;itr++){
sphValues[itr] = '' + sphValues[itr];
}
Antwoord 7
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);
}
U kunt deze methode gebruiken voor automatisch aanvullen. Ik denk dat je probleem zal worden opgelost, maar het zal niet converteren zoals je wilt, het zal converteren zoals
["label": "val1", "label": "val2"]
Antwoord 8
ES6-oplossing
const nums = [1, 2, 3, 4, 5];
const strs = Array.from(nums.join(``));
console.log(strs);
Antwoord 9
Een andere oplossing met kaart:
let nums = [1,2,2,4,3,2,5,6]
let all_to_str = nums.map(num => {return num.toString()})
console.log(all_to_str)
Uitvoer:
[ ‘1’, ‘2’, ‘2’, ‘4’, ‘3’, ‘2’, ‘5’, ‘6’ ]
Antwoord 10
gewoon door de array.map-methode te gebruiken, kunt u een reeks getallen converteren naar een reeks tekenreeksen
var sphValues = [1, 2, 3, 4, 5];
const numberToStringArray = sphValues.map((number) => {
return number.toString();
});
console.log(numberToStringArray); //['1', '2', '3', '4', '5']