Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function eliminateDuplicates(arr) {
- var i,
- len=arr.length,
- out=[],
- obj={};
- for (i=0;i<len;i++) {
- obj[arr[i]]=0;
- }
- for (i in obj) {
- out.push(i);
- }
- return out;
- }
- var names = ['Mike', 'Matt', 'Nancy', 'Adam', 'Jenny', 'Nancy', 'Carl']
- var uniq = names
- .map((name) => {
- return {count: 1, name: name}
- })
- .reduce((a, b) => {
- a[b.name] = (a[b.name] || 0) + b.count
- return a
- }, {})
- var duplicates = Object.keys(uniq).filter((a) => uniq[a] > 1)
- console.log(duplicates) // [ 'Nancy' ]
- const names = ['Mike', 'Matt', 'Nancy', 'Adam', 'Jenny', 'Nancy', 'Carl']
- const count = names =>
- names.reduce((a, b) =>
- Object.assign(a, {[b]: (a[b] || 0) + 1}), {})
- const duplicates = dict =>
- Object.keys(dict).filter((a) => dict[a] > 1)
- console.log(count(names)) // { Mike: 1, Matt: 1, Nancy: 2, Adam: 1, Jenny: 1, Carl: 1 }
- console.log(duplicates(count(names))) // [ 'Nancy' ]
- // prep
- const arr = Array.from('Learn more javascript dude');
- const counter = (prev, next) => Object.assign(prev, { [next] : (prev[next] || 0) + 1 });
- const singles = function(key){ return this[key] === 1 };
- const multiples = function(key){ return this[key] > 1 };
- // work
- const counted = arr.reduce(counter, {});
- const filtered = Object.keys(counted).filter(multiples.bind(counted));
- //[ "e", "a", "r", " ", "d" ]
- console.log(filtered);
- Array.prototype.unique = function () {
- var r = new Array();
- o:for(var i = 0, n = this.length; i < n; i++)
- {
- for(var x = 0, y = r.length; x < y; x++)
- {
- if(r[x]==this[i])
- {
- alert('this is a DUPE!');
- continue o;
- }
- }
- r[r.length] = this[i];
- }
- return r;
- }
- var arr = [1,2,2,3,3,4,5,6,2,3,7,8,5,9];
- var unique = arr.unique();
- alert(unique);
- var unique = function(){
- var hasOwn = {}.hasOwnProperty,
- toString = {}.toString,
- uids = {};
- function uid(){
- var key = Math.random().toString(36).slice(2);
- return key in uids ? uid() : uids[key] = key;
- }
- function unique(array){
- var strings = {}, numbers = {}, others = {},
- tagged = [], failed = [],
- count = 0, i = array.length,
- item, type;
- var id = uid();
- while (i--) {
- item = array[i];
- type = typeof item;
- if (item == null || type !== 'object' && type !== 'function') {
- // primitive
- switch (type) {
- case 'string': strings[item] = true; break;
- case 'number': numbers[item] = true; break;
- default: others[item] = item; break;
- }
- } else {
- // object
- if (!hasOwn.call(item, id)) {
- try {
- item[id] = true;
- tagged[count++] = item;
- } catch (e){
- if (failed.indexOf(item) === -1)
- failed[failed.length] = item;
- }
- }
- }
- }
- // remove the tags
- while (count--)
- delete tagged[count][id];
- tagged = tagged.concat(failed);
- count = tagged.length;
- // append primitives to results
- for (i in strings)
- if (hasOwn.call(strings, i))
- tagged[count++] = i;
- for (i in numbers)
- if (hasOwn.call(numbers, i))
- tagged[count++] = +i;
- for (i in others)
- if (hasOwn.call(others, i))
- tagged[count++] = others[i];
- return tagged;
- }
- return unique;
- }();
- function unique(array){
- var seen = new Set;
- return array.filter(function(item){
- if (!seen.has(item)) {
- seen.add(item);
- return true;
- }
- });
- }
- function find_duplicates(arr) {
- var len=arr.length,
- out=[],
- counts={};
- for (var i=0;i<len;i++) {
- var item = arr[i];
- counts[item] = counts[item] >= 1 ? counts[item] + 1 : 1;
- if (counts[item] === 2) {
- out.push(item);
- }
- }
- return out;
- }
- find_duplicates(['one',2,3,4,4,4,5,6,7,7,7,'pig','one']); // -> ['one',4,7] in no particular order.
- function hasDuplicate(arr){
- return (arr.length != _.uniq(arr).length);
- }
- var a = ["a","a","b","c","c"];
- a.filter(function(value,index,self){ return (self.indexOf(value) !== index )})
- var a = [324,3,32,5,52,2100,1,20,2,3,3,2,2,2,1,1,1].sort();
- a.filter(function(v,i,o){return i&&v!==o[i-1]?v:0;});
- //copy and paste: without error handling
- Array.prototype.unique =
- function(){return this.sort().filter(function(v,i,o){return i&&v!==o[i-1]?v:0;});}
- [1, 2, 3].every(function(elem, i, array){return array.lastIndexOf(elem) === i}) // true
- [1, 2, 1].every(function(elem, i, array){return array.lastIndexOf(elem) === i}) // false
- Array::duplicates = -> not @every((elem, i, array) -> array.lastIndexOf(elem) is i)
- [1, 2, 3].duplicates() // false
- [1, 2, 1].duplicates() // true
- Array.prototype.unique = function () {
- var arr = this.sort(), i; // input must be sorted for this to work
- for( i=arr.length; i--; )
- arr[i] === arr[i-1] && arr.splice(i,1); // remove duplicate item
- return arr;
- }
- var arr = [1,2,2,3,3,4,5,6,2,3,7,8,5,9],
- arr2 = [1,2,511,12,50],
- arr3 = [22],
- unique = arr.concat(arr2, arr3).unique();
- console.log(unique); // [22, 50, 12, 511, 2, 1, 9, 5, 8, 7, 3, 6, 4]
- if (!Array.prototype.indexOf){
- Array.prototype.indexOf = function(elt /*, from*/){
- var len = this.length >>> 0;
- var from = Number(arguments[1]) || 0;
- from = (from < 0) ? Math.ceil(from) : Math.floor(from);
- if (from < 0)
- from += len;
- for (; from < len; from++){
- if (from in this && this[from] === elt)
- return from;
- }
- return -1;
- };
- }
- if( $.inArray(this[i], arr) == -1 )
- function findDuplicates(arr) {
- var i,
- len=arr.length,
- out=[],
- obj={};
- for (i=0;i<len;i++) {
- if (obj[arr[i]] != null) {
- if (!obj[arr[i]]) {
- out.push(arr[i]);
- obj[arr[i]] = 1;
- }
- } else {
- obj[arr[i]] = 0;
- }
- }
- return out;
- }
- var codes = dc_1.split(',');
- var i = codes.length;
- while (i--) {
- if (codes.indexOf(codes[i]) != i) {
- codes.splice(i,1);
- }
- }
- var arrayToFilter = [ 4, 5, 5, 5, 2, 1, 3, 1, 1, 2, 1, 3 ];
- arrayToFilter.
- sort().
- filter( function(me,i,arr){
- return (i===0) || ( me !== arr[i-1] );
- });
- var input = ['a', 'b', 'a', 'c', 'c'],
- duplicates = [],
- i, j;
- for (i = 0, j = input.length; i < j; i++) {
- if (duplicates.indexOf(input[i]) === -1 && input.indexOf(input[i], i+1) !== -1) {
- duplicates.push(input[i]);
- }
- }
- console.log(duplicates);
- function identifyDuplicatesFromArray(arr) {
- var i;
- var len = arr.length;
- var obj = {};
- var duplicates = [];
- for (i = 0; i < len; i++) {
- if (!obj[arr[i]]) {
- obj[arr[i]] = {};
- }
- else
- {
- duplicates.push(arr[i]);
- }
- }
- return duplicates;
- }
- function GetDuplicates(arr) {
- var i, out=[], obj={};
- for (i=0; i < arr.length; i++)
- obj[arr[i]] == undefined ? obj[arr[i]] ++ : out.push(arr[i]);
- return out;
- }
- function GetDuplicates(arr) {
- var i, out=[], obj={};
- for (i=0; i < arr.length; i++)
- obj[arr[i]] == undefined ? obj[arr[i]] ++ : out.push(arr[i]);
- return GetUnique(out);
- }
- function GetUnique(arr) {
- return $.grep(arr, function(elem, index) {
- return index == $.inArray(elem, arr);
- });
- }
- var arr = [9, 9, 111, 2, 3, 4, 4, 5, 7];
- var obj={};
- for(var i=0;i<arr.length;i++){
- if(!obj[arr[i]]){
- obj[arr[i]]=1;
- } else {
- obj[arr[i]]=obj[arr[i]]+1;
- }
- }
- var result=[]
- for(var key in obj){
- if(obj[key]>1){
- result.push(Number(key)) // change this to result.push(key) to find duplicate strings in an array
- }
- }
- console.log(result)
- function toUnique(a,b,c){//array,placeholder,placeholder
- b=a.length;
- while(c=--b)while(c--)a[b]!==a[c]||a.splice(c,1)
- }
- var array=[1,2,3,4,5,6,7,8,9,0,1,2,1];
- toUnique(array);
- console.log(array);
- function theDuplicates(a,b,c,d){//array,placeholder,placeholder
- b=a.length,d=[];
- while(c=--b)while(c--)a[b]!==a[c]||d.push(a.splice(c,1))
- }
- var array=[1,2,3,4,5,6,7,8,9,0,1,2,1];
- toUnique(theDuplicates(array));
- function GetDuplicates(arr) {
- var i = 0, m = [];
- return arr.filter(function (n) {
- return !m[n] * ~arr.indexOf(n, m[n] = ++i);
- });
- }
- function findDuplicate(arr) {
- var set = new Set();
- var duplicates = new Set();
- for (let i = 0; i< arr.length; i++) {
- var size = set.size;
- set.add(arr[i]);
- if (set.size === size) {
- duplicates.add(arr[i]);
- }
- }
- return duplicates;
- }
- var arr = ['a','b','c','d','a','b','c','d'];
- var newA = [];
- for(var i = 0; i < arr.length; i++){
- if(newA.indexOf(arr[i]) === -1){
- newA.push(arr[i]);
- }
- }
- let duplicates = a => {d=[]; a.sort((a,b) => a-b).reduce((a,b)=>{a==b&&!d.includes(a)&&d.push(a); return b}); return d};
- duplicates([1,2,3,10,10,2,3,3,10]);
- var itemcounts = _.countBy(numbers, function (n) { return n; });
- var dupes = _.reduce(itemcounts, function (memo, item, idx) {
- if (item > 1)
- memo.push(idx);
- return memo;
- }, []);
- function getDuplicates( arr ) {
- var i, value;
- var all = {};
- var duplicates = [];
- for( i=0; i<arr.length; i++ ) {
- value = arr[i];
- if( all[value] ) {
- duplicates.push( value );
- all[value] = false;
- } else if( typeof all[value] == "undefined" ) {
- all[value] = true;
- }
- }
- return duplicates;
- }
- function getDuplicates( arr ) {
- var all = {};
- return arr.reduce(function( duplicates, value ) {
- if( all[value] ) {
- duplicates.push(value);
- all[value] = false;
- } else if( typeof all[value] == "undefined" ) {
- all[value] = true;
- }
- return duplicates;
- }, []);
- }
Add Comment
Please, Sign In to add comment