统计一个字符串里每个字符出现的频率并且把频率从高到低排序列出来:
var str2 = 'ahfkfdhalfahjfhasfkjasdfhkasjd',
o={},
ar=[],
i=str2.length,
t,
Inx=0;
while (i--) {
t=str2.substr(i,1);
t in o ? ++ar[o[t]][1] : ar[o[t]=Inx++]=[t,1];
}
ar = ar.sort(function (a,b) {
return b[1]-a[1];
});
for(i=0;i<ar.length;i++){
document.write(ar[i][0]+':'+ar[i][1]+'<br>');
}
/*
页面打印数据:
a:6
f:6
h:5
d:3
j:3
s:3
k:3
l:1
*/