Nodejs Array Unique uniq()

Here you can find the source of uniq()

Method Source Code

Array.prototype.uniq = function () {
  var arr = [];//from  w  ww  . j  a  va2  s  . c o  m
  var flag = true;
  this.forEach(function (item) {
    if (item != item) {
      flag && arr.indexOf(item) === -1 ? arr.push(item) : '';
      flag = false;
    } else {
      arr.indexOf(item) === -1 ? arr.push(item) : ''
    }
  });
  return arr;
}
// Array.prototype.uniq = function() {
//   return Array.from(new Set(this));
// }

([false, true, undefined, null, NaN, 0, 1, {}, {}, 'a', 'a', NaN]).uniq()

Related

  1. uniq()
    Array.prototype.uniq = function(){
      var uniqueness = [];
      for(var i = 0; i < this.length; i++){
        var element = this[i];
        if (this.indexOf(element) === this.lastIndexOf(element) || uniqueness.indexOf(element) === -1){
          uniqueness.push(this[i]);
      return uniqueness;
    ...
    
  2. uniq()
    Array.prototype.uniq = function() {
      var u = {}, a = [];
      for (var i = 0, ii = this.length; i < ii; i++) {
        if (u.hasOwnProperty(this[i])) {
          continue;
        a.push(this[i]);
        u[this[i]] = 1;
      return a;
    };
    
  3. uniq()
    Array.prototype.uniq = function(){
        var ans = [];
        var hasNaN = false;
        for(var i = 0,len = this.length; i < len; i++){
            if(ans.indexOf(this[i]) == -1){
                if(this[i] != this[i]){
                    if(!hasNaN){
                        ans.push(this[i]);
                        hasNaN = true;
    ...
    
  4. uniq()
    Array.prototype.uniq = function(){
      var uniques = [];
      for(var i = 0; i < this.length; i++){
        if( uniques.indexOf(this[i]) === -1){
          uniques.push(this[i]);
      return uniques;
    };
    ...
    
  5. uniq()
    Array.prototype.uniq = function () {
      var uniques = [];
      this.forEach(function(element){
        var match = false;
        uniques.forEach(function(uniqElement){
          if (uniqElement === element){
            match = true;
        });
    ...
    
  6. uniq()
    Array.prototype.uniq = function () {
      var uniq = [];
      for (var i = 0; i < this.length; i++) {
        if (uniq.indexOf(this[i]) === -1) {
          uniq.push(this[i]);
      return uniq;
    };
    ...
    
  7. uniq()
    Array.prototype.uniq = function () {
      const uniqArr = [];
      for (let i = 0; i < this.length; i++) {
        if (!uniqArr.includes(this[i])) {
          uniqArr.push(this[i]);
      return uniqArr;
    };
    ...
    
  8. uniq()
    Array.prototype.uniq = function() {
      var uniq_array = [];
      for (var i=0; i<this.length; i++) {
        curr_ele = this[i]
        if (this.lastIndexOf(curr_ele) === i) {
          uniq_array.push(curr_ele);
      return uniq_array;
    ...
    
  9. uniq()
    Array.prototype.uniq = function () {
      var sorted = this.sort();
      var uniques = [sorted[0]];
      for(var i = 1; i < sorted.length; i++) {
        if(sorted[i] !== sorted[i-1]) {
          uniques.push(sorted[i]);
        };
      };
      return uniques;
    ...