Nodejs Array Equal equals(array)

Here you can find the source of equals(array)

Method Source Code

if(Array.prototype.equals)
    console.warn("Overriding existing Array.prototype.equals. Possible causes: New API defines the method, there's a framework conflict or you've got double inclusions in your code.");
// attach the .equals method to Array's prototype to call it on any array
Array.prototype.equals = function (array) {
    // if the other array is a falsy value, return
    if (!array)/*from  w  w w  .ja v  a2 s . c o  m*/
        return false;

    // compare lengths - can save a lot of time
    if (this.length != array.length)
        return false;

    for (var i = 0, l=this.length; i < l; i++) {
        // Check if we have nested arrays
        if (this[i] instanceof Array && array[i] instanceof Array) {
            // recurse into the nested arrays
            if (!this[i].equals(array[i]))
                return false;
        }
        else if (this[i] != array[i]) {
            // Warning - two different object instances will never be equal: {x:20} != {x:20}
            return false;
        }
    }
    return true;
};
// Hide method from for-in loops
Object.defineProperty(Array.prototype, "equals", {enumerable: false});

Related

  1. equals(array)
    Array.prototype.equals = function (array) {
        if (!array)
            return false;
        if (this.length != array.length)
            return false;
        for (var i = 0, l=this.length; i < l; i++) {
            if (this[i] instanceof Array && array[i] instanceof Array) {
                if (!this[i].equals(array[i]))
                    return false;
    ...
    
  2. equals(array)
    Array.prototype.equals = function(array) {
      var answer = this.every(function(element, index) {
        return element === array[index];
      });
      if (answer) {
        return answer;
      } else {
        return 'Not equal!\n' + 'Expected: [' + array + ']\n' + 'Got: [' + this + ']';
    function assertEqual(value, expected) {
      if (Array.isArray(value) && Array.isArray(value)) {
        if (value.equals(expected)) {
          console.log("Passed");
        } else {
          console.log("Failed");
          console.log("Got: ", value);
          console.log("Expected: ", expected);
      } else {
        if (value === expected) {
          console.log("Passed");
        } else {
          console.log("Failed");
          console.log("Got: ", value);
          console.log("Expected: ", expected);
    module.exports = { assertEqual };
    
  3. equals(array)
    Array.prototype.equals = function (array) {
      if (!array)
        return false;
      if (this.length != array.length)
        return false;
      for(var i = 0, l = this.length; i < l; i++) {
        if (this[i] instanceof Array && array[i] instanceof Array){
          if (!this[i].equals(array[i]))
          return false;
    ...
    
  4. equals(array)
    Array.prototype.equals = function (array)
        if (!array)
            return false;
        if (this.length != array.length)
            return false;
    ...
    
  5. equals(array)
    Array.prototype.equals = function(array){
        if(!array){
            return false;
        if(this.length != array.length){
            return false;
        for (let i = 0; i < this.length; i++){
            if(this[i] != array[i]){
    ...
    
  6. equals(array)
    function toRadians(degrees) { return degrees * (Math.PI / 180);}
    function toDegrees(radians) { return radians * (180 / Math.PI);}
    Array.prototype.equals = function (array) {
        if (!array) { return false; }
        else if (this.length != array.length) { return false; }
        for (var i = 0, l = this.length; i < l; i++) {
            if (this[i] instanceof Array && array[i] instanceof Array) {
                if (!this[i].equals(array[i])) { return false; }
            else if (this[i] != array[i]) { return false; }
        return true;
    };
    function unitVector(vector) {
        return vector.map(function(v) { return parseFloat(v)/norm(vector); });
    function norm(vector) {
        return Math.sqrt(vector.map(
            function(v) { return v*v; }).reduce(
                function(a, b) { return a + b; }));
    function angleOf(vector) { return Math.atan(vector[1]/vector[0]); }
    
  7. equals(array)
    Array.prototype.equals = function(array) { 
        if (!array)
            return false;
        if (this.length !== array.length)
            return false;
        for (var i = 0, l = this.length; i < l; i++) {
            if (this[i] instanceof Array && array[i] instanceof Array) {
                if (!this[i].equals(array[i]))
                    return false;
    ...
    
  8. equals(array)
    Array.prototype.equals = function (array) {
      if (!array)
        return false;
      if (this.length != array.length)
        return false;
      for (var i = 0, l = this.length; i < l; i++) {
        if (this[i] instanceof Array && array[i] instanceof Array) {
          if (!this[i].equals(array[i]))
            return false;
    ...
    
  9. equals(array, strict)
    Array.prototype.equals = function (array, strict) {
        if (!array)
            return false;
        if (arguments.length == 1)
            strict = true;
        if (this.length != array.length)
            return false;
        for (var i = 0; i < this.length; i++) {
            if (this[i] instanceof Array && array[i] instanceof Array) {
    ...