编号每一个数字

Numbering every number

本文关键字:数字 每一个 编号      更新时间:2023-09-26

我想把数字每一个数字使用jquery或javascript:

如果我输入这个数字:

1, 1, 1, 2, 3, 4, 5, 5, 5, 6, 7, 8, 8, 9, 10 and so on

那么我的期望输出是:

1.1, 1.2, 1.3, 2.1, 3.1, 4.1, 5.1, 5.2, 5.3, 6.1, 7.1, 8.1, 8.2, 9.3, 10.1 and so on

var arr = [1, 1, 1, 2, 3, 4, 5, 5, 5, 6, 7, 8, 8, 9, 10];
var newArr = [arr[0] + ".1"];
var n = 1;
for (var i = 1; i < arr.length; i++) {
    if (arr[i] == arr[i - 1]) {
        n++;
    }
    else {
        n = 1;
    }
    newArr.push(arr[i] + "." + n);
}
console.info(newArr);

这就是你想要的:

var arr = [1, 1, 1, 2, 3, 4, 5, 5, 5, 6, 7, 8, 8, 9, 10];
var newarr = []; check = 0; count = 0;
for(i=0; i<arr.length; i++){
if(check != arr[i]){ count = 1; check = arr[i]; } else { count++; }
newarr.push(check+'.'+count);
}
console.log(newarr);

当然,这些数字应该组合在一起,否则你会得到1.1,1.2,2.1,3.1,1.1,1.2,5.1。然后你应该首先执行arr.sort()