mirror of
https://github.com/nodejs/node.git
synced 2025-05-19 08:24:38 +00:00

PR-URL: https://github.com/nodejs/io.js/pull/2286 Reviewed-By: Roman Reiss <me@silverwind.io>
22 lines
552 B
JavaScript
22 lines
552 B
JavaScript
'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;
|
|
};
|