Tuesday, 7 February 2017

A better way to splice an array into an array in javascript



Is there a better way than this to splice an array into another array in javascript



var string = 'theArray.splice('+start+', '+number+',"'+newItemsArray.join('","')+'");';
eval(string);

Answer



You can use apply to avoid eval:




var args = [start, number].concat(newItemsArray);
Array.prototype.splice.apply(theArray, args);


The apply function is used to call another function, with a given context and arguments, provided as an array, for example:



If we call:



var nums = [1,2,3,4];

Math.min.apply(Math, nums);


The apply function will execute:



Math.min(1,2,3,4);

No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...