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