Deepak Desai
Deepak Desai

Reputation: 59

I want to convert the below array

I want to convert the below array:

["A:100","B:234","C:124","D:634","E:543","F:657"];

Into:

["100:234:124:634:543:657"];

How to do this?

Upvotes: 0

Views: 71

Answers (5)

Ori Drori
Ori Drori

Reputation: 191916

You join it with what you want :, split it by what you don't won't /\D\:/ (non digit followed by :), and then join it using an empty string '':

var arr = ["A:100","B:234","C:124","D:634","E:543","F:657"];

var result = [arr.join(':').split(/\D\:/).join('')];

console.log(result);

Upvotes: 1

kevin ternet
kevin ternet

Reputation: 4612

You could just keep the number behind ":" and join new elements with ":"

var data = ["A:100","B:234","C:124","D:634","E:543","F:657"];
var results = [data.map(x => x.split(":")[1]).join(":")];
console.log(results);

Upvotes: 2

Nina Scholz
Nina Scholz

Reputation: 386519

You could iterate the array, return the number on the right and join it with ':'.

var data = ["A:100","B:234","C:124","D:634","E:543","F:657"],
    result = [data.map(function (a) {
        return a.match(/\d*$/);
    }).join(':')];

console.log(result);

Or a bit shorter

var data = ["A:100","B:234","C:124","D:634","E:543","F:657"],
    result = [data.map(RegExp.prototype.exec.bind(/\d*$/)).join(':')];

console.log(result);

Upvotes: 3

geekbro
geekbro

Reputation: 1323

<script>
var arr=["A:100","B:234","C:124","D:634","E:543","F:657"];
var str='';
for(var i=0;i<arr.length;i++){
  str+=arr[i].split(":")[1]+":";
   }
 console.log(str.substring(0, str.length - 1));
</script>

Upvotes: 2

Adrian
Adrian

Reputation: 2923

So not sure why you would want that particular output since it would just be a single item in an array but this should work:

var testArray = ["A:100","B:234","C:124","D:634","E:543","F:657"];

var resultArray = [];
for(var i = 0; i < testArray.length; ++i) {
  resultArray.push(testArray[i].split(':')[1]);
}

var strValue = resultArray.join(':');
console.log(strValue);

resultArray = [strValue];
console.log(resultArray);

Upvotes: 3

Related Questions