Recently, I had come across a situation where I had to make 2 ajax calls sequentially, i.e. fetch address from GeoLocation API and send it to Fedex API for fetching the transit time. For this, I needed to convert the address from GeoLocation in particular format using loop to send it to Fedex. Initially, I used '$.each()' method of jquery on an address array to convert it in desired format. This is common approach that we follow and it took 1.12ms for the processing. I wanted to reduce this processing time. After a bit of research, I opted for 'For' loop and Voilà, it took only 0.096ms. Here an example for you to check it yourself:

var array = new Array ();
for (var i=0; i<10000; i++) {
    array[i] = 0;
}

console.time('native');
var l = array.length;
for (var i=0;i<l; i++) {
    array[i] = i;
}
console.timeEnd('native');

console.time('jquery');
$.each (array, function (i) {
    array[i] = i;
});
console.timeEnd('jquery');

This is the output that I got on my local machine:

native: 0.519ms
jquery: 1.35ms

Native functions are always faster than any helper counterparts.

1 Comment

Your comment

*

*