a8m / angular-filter

Bunch of useful filters for AngularJS (with no external dependencies!)
https://github.com/a8m/angular-filter
MIT License
2.93k stars 332 forks source link

bug with String.contains polyfill #260

Open donal-keane opened 7 years ago

donal-keane commented 7 years ago

Using and loving this library. Found a bug with the String.contains polyfill. Another library was calling a for in loop on a string and the contains function was showing as a property. That library was then calling the function anonymously which led to an exception being thrown. We included a fix in our code before importing your library and I'm sharing it with you if you are interested in applying it to this library: if(!String.prototype.contains){ Object.defineProperty(String.prototype, 'contains', { enumerable: false, value: function() { return String.prototype.indexOf.apply(this, arguments) !== -1; } }); }

You can test out the fix by running the following code before and after this fix: for(var i in ''){ console.log(i);var fn = ''[i]; fn();}