Método de mapa para matrizes em javascript

Array.prototype.map = function(func) {
for(var i = 0; i<this.length;i++) {
this[i] = func(this[i]);
}
return this;
}

Exemplo de uso:

a = [1,2,3];
a
.map(function(x) {
return x*2;
})

a agora é [2,3,4]