Skip to content

Instantly share code, notes, and snippets.

@revolunet
Created February 25, 2012 12:44
Show Gist options
  • Save revolunet/1908355 to your computer and use it in GitHub Desktop.
Save revolunet/1908355 to your computer and use it in GitHub Desktop.
IE<9 indexOf polyfill
if(!Array.prototype.indexOf){Array.prototype.indexOf=function(b){var a=this.length>>>0;var c=Number(arguments[1])||0;c=(c<0)?Math.ceil(c):Math.floor(c);if(c<0){c+=a}for(;c<a;c++){if(c in this&&this[c]===b){return c}}return -1}};
if (!Array.prototype.indexOf)
{
Array.prototype.indexOf = function(elt /*, from*/)
{
var len = this.length >>> 0;
var from = Number(arguments[1]) || 0;
from = (from < 0)
? Math.ceil(from)
: Math.floor(from);
if (from < 0)
from += len;
for (; from < len; from++)
{
if (from in this &&
this[from] === elt)
return from;
}
return -1;
};
}
@BadBastion
Copy link

Hello sir! I am working to publicly release an augmented version of a previously company internal performance oriented selector library (get.js). Anyway I wanted to make sure I properly credited you for the .indexOf polyfill before I finish the initial testing release.

Currently the unminified codebase includes:
// Credit : Julien Bouquillon : https://github.com/revolunet

In addition I will be adding a credit section to the read-me once 0.1.0 is finished.

Let me know if I should include a website link or anything else.

Best,
Daniel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment