जावास्क्रिप्ट में पूर्णांक सरणी को स्ट्रिंग सरणी में बदलें


85

मेरे पास नीचे की तरह एक सरणी है:

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

फिर मुझे नीचे की तरह एक से अधिक सरणी बदलने की आवश्यकता है:

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

मैं कैसे बदल सकता हूँ? मैंने इसे ऑटो-कम्प्लीट के लिए इस्तेमाल किया।


26
sphValues.map(String)
एलक्लेनर्स

6
@elclanrs आपको उत्तर के रूप में पोस्ट करना चाहिए और टिप्पणी नहीं
श्री एलियन

7
[1,2,3,4,5].toString().split(",")
Mr_Green

1
@SonalPM आपको मार्कडाउन का उल्लेख करना चाहिए क्योंकि लिंक के साथ एक टिप्पणी पोस्ट करने के लिए आपको एक कठिन समय मिल रहा है, क्यूज़ आपने पोस्ट किया और अपनी टिप्पणी को 4 बार हटा दिया, अब 5
मिस्टर एलियन

जवाबों:


196

आप मानचित्र का उपयोग कर सकते हैं और स्ट्रिंग कंस्ट्रक्टर को एक फ़ंक्शन के रूप में पास कर सकते हैं , जो प्रत्येक संख्या को एक स्ट्रिंग में बदल देगा:

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

यह sphValues ​​को म्यूट नहीं करेगा। यह एक नई सरणी लौटाएगा।


6
मुझे समझ में नहीं आता कि यह जवाब के रूप में क्यों नहीं
पहचाना गया है

3
पुराने ब्राउज़रों के लिए जो Array.map का समर्थन नहीं करते हैं, आप underscore.js का उपयोग कर सकते हैं: _.map (sphValues, String)
जोनास Anseeuw

दुर्भाग्य से, यह बूलियंस को स्ट्रिंग्स में भी बदल देगा।
देव


9

उपयोग करें 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);



6

.map()इस संदर्भ में उपयोग करें जो एक बेहतर कदम है, साथ ही आप नीचे दिए गए कोड की तरह भी कर सकते हैं इससे आपके कोड में अधिक पठनीयता आएगी।

sphValues.map(convertAsString);

function convertAsString(val) {
  return val.toString();
}

3
 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"]

2

आप इसे स्ट्रिंग प्रकार में परिवर्तित करने के लिए बस '' जोड़ सकते हैं।

var sphValues = [1,2,3,4,5];
for(var itr = 0; itr<sphValues.length;itr++){
  sphValues[itr] = '' + sphValues[itr];
}

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.