首页 > 代码库 > js-查找特征数

js-查找特征数

输入要查找的数字范围、特征数以及出现频率,点击查找

 

↓↓↓↓↓↓↓代码↓↓↓↓↓↓↓↓↓↓↓↓↓↓

 

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>寻找特征数</title>    <link rel="stylesheet" href="style.css" type="text/css"></head><body><div id=‘bor‘ ><fieldset>    <label for="start">开始范围</label>    <input id=‘start‘ type="text" placeholder="请输入数字">    <label for="end">结束范围</label>    <input type="text" id="end" placeholder="请输入数字">    <label for="num">特征数字</label>    <input type="text" id="num" placeholder="请输入数字">    <label for="pinlv">出现频率</label>    <input type="text" id="pinlv" placeholder="请输入数字">    <input type="button" id="btn1" value="方法一查找">    <input type="button" id="btn2" value="方法二查找"></fieldset><br><div id=‘result‘ style="overflow:auto"></div> </div>    </body></html>
<script>    window.onload=function(){        document.getElementById(‘btn1‘).onclick=function(){            document.getElementById("result").innerHTML="方法 一 结果:";            var start=document.getElementById(‘start‘).value;            var end=document.getElementById(‘end‘).value;            var num=document.getElementById(‘num‘).value;            var pinlv=document.getElementById(‘pinlv‘).value;            var count=0;            var narry=new Array();            for(var i=start;i<=end;i++){                count=0;                count+=parseInt(i.toString().split(num).length-1)//计算特征数字出现的频率                if(count>=pinlv){//当特征数字出现的频率大于等于规定的频率,将数字推进数组当中                    narry.push(i)                }            }            for(var j=0;j<narry.length;j++){                if(j==narry.length-1){                    document.getElementById("result").innerHTML+=narry[j];                    break;                }//当输出到最后一个数字时不需要逗号                document.getElementById("result").innerHTML+=narry[j];//按顺序输出数组                document.getElementById("result").innerHTML+=",";                if((j+1)%5==0){                    document.getElementById("result").innerHTML+=‘<br>‘;//每隔五个数字换行                }            }        }        document.getElementById(‘btn2‘).onclick=function(){            document.getElementById("result").innerHTML="方法 二 结果:";            var start=document.getElementById(‘start‘).value;            var end=document.getElementById(‘end‘).value;            var num=document.getElementById(‘num‘).value;            var pinlv=document.getElementById(‘pinlv‘).value;            var count=0;            var narry=new Array();            for(var i=start;i<=end;i++){                count=0;                var loc=0;                loc=i.toString().indexOf(num,loc);                                                if(loc!=(-1)){                    count++                    if(loc<i.toString().length-1){//如果indexOf还没有把全部的字符找一遍就继续找                        loc=i.toString().indexOf(num,(loc+1))//继续查找字符串后续的字符有没有特征数字                        if(loc<0){//如果后续的字符没有特征数字,则计算频率是否符合我们要的频率,符合就把数字推进数组里去                            if(count>=pinlv){//当特征数字出现的频率大于等于规定的频率,将数字推进数组当中                                 narry.push(i)                            }                            continue;                        }else{//如果后续字符有特征数字则count++,然后继续查找                            while(loc!=(-1)){                            count++;                            loc=i.toString().indexOf(num,(loc+1))                        }                        }                                                // if(loc!=(-1)){                        //     count++;                        // }                    }                }                if(count>=pinlv){//当特征数字出现的频率大于等于规定的频率,将数字推进数组当中                     narry.push(i)                }            }                for(var j=0;j<narry.length;j++){                if(j==narry.length-1){                    document.getElementById("result").innerHTML+=narry[j];                    break;                }//当输出到最后一个数字时不需要逗号                document.getElementById("result").innerHTML+=narry[j];//按顺序输出数组                document.getElementById("result").innerHTML+=",";                if((j+1)%5==0){                    document.getElementById("result").innerHTML+=‘<br>‘;//每隔五个数字换行                }            }    }    }</script>

 


 
<script type="text/javascript">// =pinlv){//当特征数字出现的频率大于等于规定的频率,将数字推进数组当中 narry.push(i) } } for(var j=0;j‘;//每隔五个数字换行 } } } document.getElementById(‘btn2‘).onclick=function(){ document.getElementById("result").innerHTML="方法 二 结果:"; var start=document.getElementById(‘start‘).value; var end=document.getElementById(‘end‘).value; var num=document.getElementById(‘num‘).value; var pinlv=document.getElementById(‘pinlv‘).value; var count=0; var narry=new Array(); for(var i=start;i<=end;i++){ count=0; var loc=0; loc=i.toString().indexOf(num,loc); if(loc!=(-1)){ count++ if(loc=pinlv){//当特征数字出现的频率大于等于规定的频率,将数字推进数组当中 narry.push(i) } continue; }else{//如果后续字符有特征数字则count++,然后继续查找 while(loc!=(-1)){ count++; loc=i.toString().indexOf(num,(loc+1)) } } // if(loc!=(-1)){ // count++; // } } } if(count>=pinlv){//当特征数字出现的频率大于等于规定的频率,将数字推进数组当中 narry.push(i) } } for(var j=0;j‘;//每隔五个数字换行 } } } }// ]]></script>

js-查找特征数