Joining an array in javascript or jquery

var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];

My conclusion should be

var final=["a~d","b~e","c~f"];

where '~' is the delimiter.

+4
source share
10 answers

Check if there are any lengthfor both arrays.

See comments in code:

var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];

var len = first.length > second.length ? first.length : second.length;
// Get the length of the array having max elements

var separator = '~';

var final = [];

for(var i = 0; i < len; i++) {
    // If no element is present, use empty string
    first[i] = first[i] ? first[i] : '';
    second[i] = second[i] ? second[i] : ''; 

    final.push(first[i] + separator + second[i]);
    // Add the new element in the new array
}
+3
source

Here is the function for this ... you can specify the behavior if the arrays do not have the same length:

function merge(arr1,arr2,delimiter){
  var i,len;
  var delim = delimiter.toString();
  var res = [];
  if(arr1.length !== arr2.length){
    //TODO: if arrays have different length
  }else{
    len = arr1.length;
    for(i=0; i< len; i++){
      res[i] = arr1[i] + delim + arr2[i];
    }
  }
  return res;
}

merge(['a','b','c'],['d','e','f'],'~');
Run codeHide result
+2
source

, Haskell zipWith. ( - , ) , .

:

var zipWith = function(zippingFunction, arr1, arr2){ var length = arr1.length < arr2.length ? arr1.length : arr2.length; var retArray = []; for (i = 0; i< length; i++){ retArray.push(zippingFunction(arr1[i], arr2[i])); } return retArray; }; console.log(zipWith(function(a, b){return a + b}, [1,2,3], [4,5,6])); console.log(zipWith(function(a, b){return a + "~" + b}, ["1","2","3"], ["4","5","6"]));

:

[ 5, 7, 9 ] [ '1~4', '2~5', '3~6' ]

+2
var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];
var final=[];

// assuming they are the same length
for(var i = 0; i < first.length; i++) {
  final.push(first[i] + '~' + second[i]);
}

console.log(final);
+1
var final1=[];
var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];
$.each(first, function( index, value ) {
      var tmp=value+"~"+second[index];
      final1[index]=tmp;
});
 console.log(final1);

JQUERY . , .

+1

JavaScript. . , .

//your initial array
var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];

//set up final array
var final = [];
//loop through
for (var ii = 0, nn = first.length; ii < nn; ii++)
{
    //add to final array each item of first and secon
    final.push(first[ii]+"~"+second[ii]);
}

//print to console
console.log(final);

:

["a~d", "b~e", "c~f"]

, ,

//your initial array
var first = [ "a", "b", "c", "g" ];
var second = [ "d", "e", "f" ];

//set up final array
var final = [];
//loop through until the length of shortest
for (var ii = 0, nn = (first.length < second.length ? first.length : second.length); ii < nn; ii++)
{
    //add to final array each item of first and secon
    final.push(first[ii]+"~"+second[ii]);
}

//print to console
console.log(final);

:

["a~d", "b~e", "c~f"]
+1
var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];
var count = -1;
var arr=new Array();
first.forEach(function(entry) {
     count++;
     arr[count] = entry + "~" + second[count]; 
});
alert(arr);



http://jsfiddle.net/7evx02zf/6/

+1

...

<script>

var first = ["a", "b", "c"];
var second = ["d", "e", "f"];
var third=new Array();

for(i=0;i<first.length;i++)
{

var data=first[i]+'~'+second[i];
third.push(data);

}
console.log(third);
</script>

: [ "a ~ d", "b ~ e", "c ~ f" ]

+1

:

var final=[];
var first = [ "a", "b", "c" ];
var second = [ "d", "e", "f" ];
for(var i = 0; i < first.length; i++) {
 final.push(first[i] + '~' + second[i]);
}
console.log(final.toString());

:

+1

JS-. 1 :

var first = [ "a", "b", "c", "x", "y" ];
var second = [ "d", "e", "f" ];
var final = [];

first.forEach(function(v,i) {final[i] = first[i] + '~' + (second[i] || '')});
+1

All Articles