3 var toPosInt = require('../../number/to-pos-integer')
4 , eq = require('../../object/eq')
5 , value = require('../../object/valid-value')
7 , hasOwnProperty = Object.prototype.hasOwnProperty;
9 module.exports = function (other) {
11 (value(this) && value(other));
12 l = toPosInt(this.length);
13 if (l !== toPosInt(other.length)) return false;
14 for (i = 0; i < l; ++i) {
15 if (hasOwnProperty.call(this, i) !== hasOwnProperty.call(other, i)) {
18 if (!eq(this[i], other[i])) return false;