I added unique() function to Javascript Array:
Array.prototype.unique = function(){
  return this.filter(function(item, ind, arr){
    return ind == arr.lastIndexOf(item);
  });
};
but when I iterate like this:
for (i in arr) { ... }
i becomes unique as well:
var arr = [1, 2, 1];
for (i in arr) {
    console.log(i + " ===> " + arr[i]);
}
// 0 ===> 1
// 1 ===> 2
// 2 ===> 1
// unique ===> function () { return this.filter(function (item, ind, arr) {return ind == arr.lastIndexOf(item);}); }
I know that I can iterate like this:
for (i = 0; i < arr.length; i++) { ... }
However, I still wonder if it's possible to add functions to Array and iterate like this:
for (i in arr) { ... }
?
 
    