다음과 같은 배열이 있습니다.
var sphValues = [1, 2, 3, 4, 5];
그런 다음 위의 배열을 아래와 같이 변환해야합니다.
var sphValues = ['1', '2', '3', '4', '5'];
어떻게 변환 할 수 있습니까? 자동 완성을 위해 이것을 사용했습니다.
답변
답변
배열 방법을 사용하여
var sphValues = [1,2,3,4,5]; // [1,2,3,4,5]
sphValues.join().split(',') // ["1", "2", "3", "4", "5"]
답변
사용 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"]
편집 : 주석에 언급 된 @elclanrs
로 사용 arr.map(String);
하는 것이 더 좋습니다.
답변
for(var i = 0; i < sphValues.length; i += 1){
sphValues[i] = '' + sphValues[i];
}
답변
사용 .map()
이이 코드에 더 가독성을 추가 할 코드를 아래처럼 할 수뿐만 아니라, 더 나은 움직임이다 이러한 맥락에서,
sphValues.map(convertAsString);
function convertAsString(val) {
return val.toString();
}
답변
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);
}
이 방법을 자동 완성에 사용할 수 있습니다. 나는 당신의 문제가 해결 될 것이라고 생각하지만 당신이 원하는대로 변환되지 않을 것입니다.
["label": "val1", "label": "val2"]
답변
”를 추가하여 문자열 유형으로 변환 할 수 있습니다.
var sphValues = [1,2,3,4,5];
for(var itr = 0; itr<sphValues.length;itr++){
sphValues[itr] = '' + sphValues[itr];
}