js业务基本算法

  • 已知一个数组a与一个正整数i(数组a的长度正好能被整数i整除),现拥有一个数据源,数据源中一条数据正好对应数组a中一个成员,提供一个函数get(c1,c2),输入数组a中两个成员本身,可返回在它们数组a中区间(包括自己本身)对应数据源的值,再提供一个函数down(j),输入获取的数据源的值,可下载获取的数据(数据源的值可用+号连接,赋值给新的变量j,传入函数可批量下载)。现要求每次获取的数据条数是随机的且不能超过正整数i,每次下载数据的条数只能等于正整数i,将所有数据下载完成即可。
  1. 先审题,题目已经告知数据获取函数get(c1,c2),下载函数down(j),数组a,正整数i
  2. 再看要求,每次获取的数据条数是随机的且不能超过正整数i,每次下载数据的条数只能等于正整数i,将所有数据下载完成即可
  3. 注意:每次获取数据条数是随机的且并不是每次获取之后就直接下载,可多次获取再下载
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
   
    <script src="./router/js/jquery-3.5.1.js"></script>
    <script>

        //初始化获取的数据
        var get_data=[]
        
        do{ 
            if(get_data.length<i){//获取的数据数小于i
                do {
                    get_data=get_data.concat(get(c1,c2))//加入新的获取的数据
                } while (get_data.length>=i);           //直到获取的数据数>=i
            }


            //前i个数据之间用+号连接,并赋值给j
            var j=''
            for(var index1=0; index1<i; index1++){
                if(j==''){
                    j=get_data[index1]
                }else{
                    j=j+'+'+get_data[index1]
                }
            }

            //下载j
            down(j)

            //将剩下的数据返回get_data
            for(var index2=i; index2<get_data.length; index2++){
                var new_get_data=[]
                new_get_data.push(get_data[index2])
            }
            get_data=new_get_data
            
        }while(){
            
        }


    </script>
</body>
</html>
原文地址:https://www.cnblogs.com/DrcProgrammingCool/p/13212954.html