Nodejs Array Equal equals(array, strict)

Here you can find the source of equals(array, strict)

Method Source Code

/* Return if two arrays are equals */

Array.prototype.equals = function(array, strict){
  if(this.length!=array.length)
    return false;

  if(arguments.length == 1)
    strict = true;//from  ww  w .j  a  v a2  s .com

  if(!strict){
    this.sort((x,y) => x-y);
    array.sort((x,y) => x-y);
  }

  for(var i = 0; i < this.length; i++){
    if(this[i]!=array[i]){
      return false;
    }
  }

  return true;
}

Related

  1. 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]); }
    
  2. 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;
    ...
    
  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, 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) {
    ...
    
  5. equals(array, strict)
    function gridToCanvas(gridX, gridY) {
      var canvasX = gridX * 16;
      var canvasY = gridY * 16; 
      return [canvasX, canvasY];
    function isInt(num) {
      return !(num % 1 != 0);
    Array.prototype.equals = function (array, strict) {
    ...
    
  6. equals(b)
    function arraysEqual(a,b) { return !!a && !!b && !(a<b || b<a); }
    Array.prototype.equals = function(b) {
      return arraysEqual(this, b);
    Array.prototype.isPalindromic = function() { return this.concat().equals(this.reverse()); }
    function getHighestPalindrome () {
      var max = 1000;
      var min = 100;
      var palindrome = 0;
    ...
    
  7. equals(element)
    Array.prototype.equals = function (element) {
      if (this === element) return true;
      if (element == null || this == null) return false;
      if (element.length != this.length) return false;
      for (var i = 0; i < element.length; ++i) {
        if (element[i] !== this[i]) return false;
      return true;
    
  8. equals(other)
    Array.prototype.equals = function(other) {
        if (!other)
            return false;
        if (other == this)
            return true;
        if (this.length != other.length)
            return false;
        for (var i = 0, l=this.length; i < l; i++) {
            if (this[i] != other[i]) {
    ...
    
  9. equals(other)
    function is_self_describing(n) {
        var digits = Number(n).toString().split("").map(function(elem) {return Number(elem)});
        var len = digits.length;
        var count = digits.map(function(x){return 0});
        digits.forEach(function(digit, idx, ary) {
            if (digit >= count.length)
                return false
            count[digit] ++;
        });
    ...