Javascript 对于给定的字符串数组(每个字符串都有一个项目名称),请按项目名称对所有字符串进行分组
str_arr=[“a”、“a”、“b”、“c”、“b”] 结果数组应为[“A2”、“B2”、“C1”] 我无法使用以下代码获得所需的结果Javascript 对于给定的字符串数组(每个字符串都有一个项目名称),请按项目名称对所有字符串进行分组,javascript,Javascript,str_arr=[“a”、“a”、“b”、“c”、“b”] 结果数组应为[“A2”、“B2”、“C1”] 我无法使用以下代码获得所需的结果 function foo(str) { var a = [], b = [], prev; for ( var i = 0; i < str.length; i++ ) { if ( str[i] !== prev ) { a.push(str[i]); b.push(1
function foo(str) {
var a = [], b = [], prev;
for ( var i = 0; i < str.length; i++ ) {
if ( str[i] !== prev ) {
a.push(str[i]);
b.push(1);
} else {
b[b.length-1]++;
}
prev = arr[i];
}
return [a, b];
}
var result = foo(str_arr);
var newA = result[0].map((e, i) => e + " " + result[1][i]+ "<br>");
函数foo(str){
var a=[],b=[],上一个;
对于(变量i=0;i”;
你可以拿一个物体来计算物品的数量和数量
- 获取对象的关键点
- 按计数递减和按键递增排序
- 映射键并计数为字符串
函数foo(事务){
变量计数={};
对于(变量i=0;i计数[b]-计数[a]| | a>b | |-(ak+''+计数[k]);
}
var事务=[“笔记本”、“笔记本”、“鼠标”、“键盘”、“鼠标”],
结果=foo(交易);
控制台日志(结果)代码>这里有一个函数,用于向数组中的唯一字添加计数
这一个更老派,通过迭代排序数组
函数countDistinctWords(arr){
如果(arr.length==0)返回arr;
arr=arr.sort();
让结果=[];
设n=1;
对于(设i=1;i 控制台日志(str_arr2)代码>无需排序。原始阵列不受影响
功能组(arr){
var hits={},group_arr=[];
对于(变量i=0;i