var str = 'IndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilitiesIndivisibilities';
const duplicateCount = (string) => {
if (string.length <= 1) {
return 0
}
let startingIndex = 0;
let count = 0;
const array = string.toLowerCase().split('');
const findDuplicates = (arr, i) => {
if (i < arr.length - 1) {
if (arr.indexOf(arr[i]) !== arr.lastIndexOf(arr[i])) {
count++;
findDuplicates(arr.filter(item => item !== arr[i]), i);
} else {
i++;
findDuplicates(arr, i);
}
}
};
findDuplicates(array, startingIndex);
return count;
};
duplicateCount(str);
const duplicateCount = (string) => {
if (string.length <= 1) {
return 0
}
let startingIndex = 0;
let count = 0;
const str = string.toLowerCase();
const findDuplicates = (str, i) => {
if (i < str.length - 1) {
if (str.indexOf(str[i]) !== str.lastIndexOf(str[i])) {
count++;
const reg = new RegExp(str[i], 'g');
findDuplicates(str.replace(reg, ''), i);
} else {
i++;
findDuplicates(str, i);
}
}
};
findDuplicates(str, startingIndex);
return count;
};
duplicateCount(str);
function duplicateCount(str) {
let arr = str.toLowerCase().split('');
let obj = {};
let result = 0;
arr.forEach((item) => {
if (obj[item] === undefined) obj[item] = 0;
obj[item] += 1;
});
for (key in obj) {
if (obj[key] > 1) ++result
}
return result
}
duplicateCount(str)
function getFrequency(string) {
if (typeof string !== 'string') return;
var charMap = {};
var result = 0;
string = string.toLowerCase();
for (var i = 0; i < string.length; i++) {
var char = string[i];
if(charMap[char] === null) continue;
charMap[char] ? charMap[char]++ : charMap[char] = 1;
if (charMap[char] > 1) {
charMap[char] = null;
result++;
}
}
return result;
};
getFrequency(str)
const duplicateCount = (text) => [...text.toLowerCase()].reduce((acc, item) => {
acc[item] = acc[item] ? (++acc[item]) : 1;
acc.count += Number(acc[item] === 2);
return acc;
},{count:0}).count;
duplicateCount(str)