js-数组练习

//   1.对一个已有数组 [4,5,0,3,0,0,34,0,23,0,46,4,0,0,9]

//     去掉所有0后,生成新的数组输出

     var x=[4,5,0,3,0,0,34,0,23,0,46,4,0,0,9];

     var y = [];

     for(var i = 0;i<x.length;i++){

     if((x[i])!=0){

    y.push(x[i])

  }

}

   

    document.writeln(y)


 

    // 2.对一个已有数组 a[5] = {33,22,55,11,44,55},

    // 找出其中的最大值,并输出显示值和他所在的位置

     var a=[33,22,55,11,44,55]

     a.sort(function(x, y){

         return y-x

        });

    console.log(x[0])//最后一位(x[x.length-1])

   

    //  3.[23,5,6,7,3,78,34]找出数组中的所有偶数值,生成新数组

   

        var a=[23,5,6,7,3,78,34]

        x.filter(function(value,index){

           return value%2==0

        })

        console.log(y)



 

    //  4.[93,55,86,77,53,78,64,43,61,44],数组里存储的成绩,求出最高分,最低分,总分和平均分

     var a=[93,55,86,77,53,78,64,43,61,44]

     console.log(a)

     a.sort(function(x, y){

         return x-y

        });

     var min=a[0]

     var max=a[a.length-1]

     var sum=a.reduce(function(prev,next){

         return prev+next

     })

     var avg=sum/a.length

     console.log(min,max,sum,avg)

   

1.[1,4,2,3,6,67,3,22,5.1,2,3]去掉数组中的重复值

        var x=[1,4,2,3,6,67,3,22,5.1,2,3]

        // arr.sort(function(a,b){

        //     return a-b

        // })

        var y=[]

        for(var i=0;i++;i<x.length){

            if (y.indexOf(x[i])==-1) {

                y.push(x[i])

            }

        }

        console.log(y)

     // 2.[1,2,3,4]和[3,4,5,6],求出两个数组的差集

    //  结果:[1,2,5,6]

       

        var a=[1,2,3,4]

        var b=[3,4,5,6]

        var x=a.filter(function(value,index){

            return b.indexOf(value==-1)

        })

        console.log(x)

        var y=b.filter(function(value,index){

            return a.indexOf(value==-1)

        })

        console.log(x.concat(y))

    // 3.[1,3,5,6,22,67,9]把数组拼接成最大的数字

        //  结果967653221

        var x=[1,3,5,6,22,67,9]

        var str=x.sort().reverse.join("")

        console.log(x)


 

    // 4."abcaabcaaccbacsdcabc"找出重复次数多的字符和个数

    //   例如:字符:a出现6次

        var str="abcaabcaaccbacsdcabc"

        var x=str.split("")

        x.sort()

        var str=""

        var max=0

        var count=0

        for(var i=0;i<x.length-1;i++){

            if (x[i]=x[i+1]) {

                count++

            }

            else{

                if (max<count) {

                    max=count

                    str=x[i]

                }

                count=1

            }

        }

        console.log(str,max)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孙璐_iLu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值