'use strict'; var toPosInt = require('../../number/to-pos-integer') , eq = require('../../object/eq') , value = require('../../object/valid-value') , hasOwnProperty = Object.prototype.hasOwnProperty; module.exports = function (other) { var i, l; (value(this) && value(other)); l = toPosInt(this.length); if (l !== toPosInt(other.length)) return false; for (i = 0; i < l; ++i) { if (hasOwnProperty.call(this, i) !== hasOwnProperty.call(other, i)) { return false; } if (!eq(this[i], other[i])) return false; } return true; };