[javascript] JavaScript에서 정수 배열을 문자열 배열로 변환

다음과 같은 배열이 있습니다.

var sphValues = [1, 2, 3, 4, 5];

그런 다음 위의 배열을 아래와 같이 변환해야합니다.

var sphValues = ['1', '2', '3', '4', '5'];

어떻게 변환 할 수 있습니까? 자동 완성을 위해 이것을 사용했습니다.



답변

map 을 사용 하고 각 숫자를 문자열로 변환하는 함수로 String 생성자를 전달할 수 있습니다 .

sphValues.map(String) //=> ['1','2','3','4','5']

이것은 sphValues를 변경하지 않습니다. 새 배열을 반환합니다.


답변

배열 방법을 사용하여

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];
}