Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Array.isArray() would be more reliable than testing if it has a property "length" :/

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...



It's not quite so simple since JavaScript has the concept of array-like objects - basically objects with a length property and numeric keys (but which aren't arrays).

From the Underscore documentation: "Collection functions work on arrays, objects, and array-like objects such as arguments, NodeList and similar".

So basically this bug can lead to false positives when checking for array-like objects.


Except as MDN says, that works in IE9+, and jQuery 1.x works in IE6+.


MDN has a polyfill for older browsers, right below the examples.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: