AngularJS Material: Material Design component library for AngularJS (1.x). Use angular/material2 channel for Angular Material (v2+).
Hi,
var str = "aaabbccccddd";
var arr = str.split("");
var counts = {};
for (var i = 0; i < arr.length; i++) {
var alphabet = arr[i];
console.log("alphabet--->" + alphabet);
console.log("counts[alphabet]--->" + counts[alphabet]);
if (counts[alphabet])
{
counts[alphabet] = counts[alphabet] + 1;
console.log("inside if--->");
//console.log("inside if--->" + counts[alphabet] + 1);
console.log(counts[alphabet] + 1);
}
else
{
counts[alphabet] = 1;
console.log("inside else--->");
console.log(counts[alphabet]);
//console.log("inside else--->" + counts[alphabet] + 1);
}
//counts[alphabet] = counts[alphabet] ? counts[alphabet] + 1 : 1;
}
console.log('a: ' + counts['a'] + '\n b: ' + counts['b'] + '\n c: ' + counts['c'] + '\n d: ' + counts['d'])
output
alphabet--->a
counts[alphabet]--->undefined
inside else--->
1
alphabet--->a
counts[alphabet]--->1
inside if--->
3
alphabet--->a
counts[alphabet]--->2
inside if--->
4
alphabet--->b
counts[alphabet]--->undefined
inside else--->
1
alphabet--->b
counts[alphabet]--->1
inside if--->
3
alphabet--->c
counts[alphabet]--->undefined
inside else--->
1
alphabet--->c
counts[alphabet]--->1
inside if--->
3
alphabet--->c
counts[alphabet]--->2
inside if--->
4
alphabet--->c
counts[alphabet]--->3
inside if--->
5
alphabet--->d
counts[alphabet]--->undefined
inside else--->
1
alphabet--->d
counts[alphabet]--->1
inside if--->
3
alphabet--->d
counts[alphabet]--->2
inside if--->
4
a: 3
b: 2
c: 4
d: 3
count[alphabet] = 1
second pass you add 1, but then add another one on display (but does not retain the second addition)