for循環去重排序


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>去重,排序</title>
</head>

<body>
    <div style="width:200px; height:200px; " onclick="dj()">
        1,5,4,47,8,95,6,3,2,10,1,4,7,5,3,6
        1,22,33,44,6,8,9,7,55,8,7,4,6,9
    </div>
    
</body>
</html>
<script>

function dj()
{
    var r=prompt("數組")
    var q=""
    var a=[];
    for(var k=0;k<=r.length+1;k++)
    {    
        if(r[k]!=",")
        {
            q=q+r[k];
            
        }
        if(r[k]==",")
        {
            
            a.push(q);
            q="";
        }
    }
    

    var c=[];//先定義一個空數組
    var h;//定義一個中間值下面排序使用
    
    for(var i=0;i<a.length;i++)   //去重循環
    {    
        var b=0;//聲明變量b 放在第一個循環里,要循環一次重新聲明一次b為0,否則b變為1不會重置
        for(var e=0;e<a.length;e++)
        {    
            if(a[i]==c[e])//拿a的第i個對比c的所有,並依次循環
            {    
                b=1;//如果有相等的走b=1;
                break;
            }
        }
        if(b==0)//如果上面有相等的會變為1不走本條,不會把值放入數組c中;
        {
            c.push(a[i]);//如果不相等就把數值放入數組c中;
            //給c的最后添加數組a中的第i個
        }
    }
    
    for(var f=0;f<c.length-1;f++)//冒泡排序
    {
        for(var g=0;g<c.length-1;g++)
        {
            if(parseInt(c[g])>parseInt(c[g+1]))//判斷第一個數和第二個數誰大;並依次循環對比;
            {
                h=c[g+1];//把前面的數存入中間值中
                c[g+1]=c[g];//把后面的值付給前面的位置
                c[g]=h;//再把中間值賦予后面的位置
            }
        }
    }
    alert(c)//輸出去重並排序后的值;
}    
</script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM