日期:2014-05-16  浏览次数:20379 次

如何用js合并相同的手机号码
本帖最后由 Opera_mini 于 2013-03-13 11:06:55 编辑
比如:
13613965892,2分31秒
13613965892,38秒
13613965892,10分14秒
37163786399,46秒
13633889873,6分52秒
37163670465,45秒
18896841667,4分25秒
13460683584,8分58秒
13101719511,1分38秒
13066114220,2分19秒
15324989579,15秒
15324989579,10秒
13613965892,3分26秒
13101719511,2分20秒
15803889653,1分20秒
13066114220,30秒
15803889653,2分24秒
13613965892,2分24秒
15803889653,1分25秒
13101719511,29秒
15803889653,1分57秒
15803889653,2分1秒
15803889653,1分54秒
13101719511,26秒
13613965892,31秒
15803889653,1分16秒
15515689780,2分44秒
18337171792,16秒
13613965892,14分33秒
15803889653,6分33秒
18221496900,1分10秒
15938552013,1分0秒
13101719511,1分13秒
15803889653,5分30秒
15803889653,3分6秒
13101719511,12秒
37163786399,1分29秒
13613965892,3分29秒
18337171792,1分54秒
18337171792,33秒

这整个是一个字符串,如何通过js的字符串操作或数组操作合并相同的手机号码,并合并分钟数?如何遍历?求大神解答。
javascript

------解决方案--------------------

<script type="text/javascript">
function formSubmit(){
var phoneStr = "13613965892,2分31秒13613965892,38秒13613965892,10分14秒37163786399,46秒" +  
"13633889873,6分52秒37163670465,45秒18896841667,4分25秒13460683584,8分58秒13101719511,1分38秒13066114220,2分19秒" + 
"15324989579,15秒15324989579,10秒13613965892,3分26秒13101719511,2分20秒15803889653,1分20秒13066114220,30秒15803889653,2分24秒" + 
"13613965892,2分24秒15803889653,1分25秒13101719511,29秒15803889653,1分57秒15803889653,2分1秒15803889653,1分54秒" + 
"13101719511,26秒13613965892,31秒15803889653,1分16秒15515689780,2分44秒18337171792,16秒13613965892,14分33秒" + 
"15803889653,6分33秒18221496900,1分10秒15938552013,1分0秒13101719511,1分13秒15803889653,5分30秒15803889653,3分6秒13101719511,12秒" + 
"37163786399,1分29秒13613965892,3分29秒18337171792,1分54秒18337171792,33秒" ;

var phoneArray = new Array(); 
var timeArray = new Array();
var existsArray = new Array();
var valueStr = "" ;
phoneArray = phoneStr.split("秒");
for (var i = 0 ; i < phoneArray.length -1 ; i++){
var k = 0 ;
for ( ; k < existsArray.length ; k++){
if (phoneArray[i].split(",")[0] == existsArray[k]){
break ;
}else {
continue ;
}
}
if (k >= existsArray.length){
existsArray.push(phoneArray[i].split(",")[0]);
timeArray.push(phoneArray[i].split(",")[1]);
}else {
timeArray[k] = timeArray[k] + "#" + phoneArray[i].split(",")[1] ;
}
}
for (var j = 0 ; j < existsArray.length ; j++){
valueStr = valueStr + existsArray[j] + "," + formatTime(timeArray[j]) + "<br />" ;
//alert(existsArray[j]);
//alert(timeArray[j]);
}
document.getElementById("txt1").innerHTML = valueStr ;
};
function formatTime(value){
var valueArray = value.split("#");
var second = 0 ;
if (valueArray.length > 1){
for (var i = 0 ;