JavaScript:更改数组中所有重复的元素

JavaScript:更改数组中所有重复的元素,javascript,arrays,replace,compare,Javascript,Arrays,Replace,Compare,我有一个这样的数组 var array=[[1,'a'],[1,'b'],[2,'c'],[2,'b'],[2,'d'],[3,'a'],[3,'s'],[3,'w'],[3,'q'],[4,'w']] 我想要的输出如下: 1 a b 2 c b d 3 a 等等。所以我想用'替换所有的双精度数字 尝试了这个,但它只比较了两个元素 for( var i=0; i<array.length-1; i++ ) { if ( array[i

我有一个这样的数组

var array=[[1,'a'],[1,'b'],[2,'c'],[2,'b'],[2,'d'],[3,'a'],[3,'s'],[3,'w'],[3,'q'],[4,'w']]
我想要的输出如下:

1   a
    b
2   c
    b
    d
3   a
等等。所以我想用
'
替换所有的双精度数字

尝试了这个,但它只比较了两个元素

for( var i=0; i<array.length-1; i++ ) {
        if ( array[i][0] == array[i+1][0] ) {
            array[i+1][0]='';
        }
    }   

对于(var i=0;i您需要添加外部循环:

   for(var j=0; j < array.length; j++){
for( var i=0; i<array.length; i++ ) {
        if ( array[i][0] == array[j][0] && i != j) {
            array[i][0]='';
        }
    } 
}
for(var j=0;j对于(var i=0;i以下代码,以您的问题中所示的格式打印数据,但不修改数据

//print first data
println( string(array[0][0]) + '  ' + array[0][1] )
var prevNumber = array[0][0]  // record the number of data printed last.

for( var i=1; i<array.length-1; i++ ) {
    if ( array[i][0] == prevNumber ) {  // if same number, print ' ' instead of number.
        println( ' ' + '   ' + array[i][1] )
    } else { // number is changed
        println( array[i][0] + '   ' + array[i][1] )
        prevNumber = array[i][0]  // record the number of data printed last.
    }
}   
//打印第一个数据
println(字符串(数组[0][0])+“”+数组[0][1])
var prevNumber=array[0][0]//记录上次打印的数据数。
对于(var i=1;i