js数组 随机数 数组去重

本文介绍了JavaScript中Math对象的使用,包括随机数的生成方法。接着详细讲解了数组的定义、数据操作,如遍历、添加和删除元素。通过实例展示了如何统计学生平均成绩、生成指定范围的数组、实现3D彩票随机选号以及数组去重的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、js内置对象--Math
abs() 绝对值
sqrt(3) 2开平方
pow(2,3) 2的3次幂 返回x的y次幂的值

浮点数测
(1):floor():向下取整

(2)round():四舍五入
round(23.6)  24
round(23.2)  23
23.67--23.7
Math.round((23.67*10)/10)


(3)tofixed():截取位数,四舍五入
sin(30):三角函数 -1 -- 1

*** random 随机数
(1):返回随机数
Math.random() 返回0-1之间的浮点数--不包含0,1

(2)返回0-10之间随机数
Math.round(Math.random()*10)//0-9
Math.floor(Math.random()*11)//0-10

(3)返回指定范围的随机数
f1(10,200) 包含10和200

(4)ceil() 向上取整

[1]f1(起始,终止) 包含起始和终止
console.log(Math.floor(Math.random()*(20-10+1))+10)
Math.floor(Math.random() * (max - min + 1)) + min;
[2]f1(起始,终止) 包含起始和不包含终止
Math.floor(Math.random() * (max - min )) + min;
[3]f2(起始,终止) 不包含起始和不包含终止
Math.ceil(Math.random() * (max - min - 1)) + min;


二、数组
1、数组的定义
js的数组是可以保存任意数据类型的数据集合

(1):构造函数方式
var a1=new Array() "空"数组
(2):直接量实现
var a1=[] "空"数组

2、数组的数据操作
var a1=[]
a1[0]="hello"
console.log(a1)

(2):长度
var a1=new Array(3)
a1[0]----undefine

(3):数组的遍历
var a1=[23,45,56,78]
for(var i=0;i<=a1.lenth;i++){
    a1[i]
}

(4):数组添加、删除
push:数组尾部增加一个数据,原数组修改,返回修改后的数组长度
pop:数组尾部删除一个数据,原数组修改,返回被删除的元素

unshift:头部增加元素,对原数据修改,返回修改后的数组长度
shift:头部删除元素

1、输入5个学生的成绩,0-100,放入数组,统计学生平均成绩,并输出
var i=0
   var arrscore=[]
   while(true){
      score=prompt("")
      arrscore[i]=score     
      i++
      if(i==4){
         break;
      }      
   }
   arrscore=[45,67,89,12,34]
   var sum=0
   for(var i in arrscore){
      sum+=arrscore[i]
   }
   sum/arrscore.length

2、生成1-20数组[1,2,3,,,20]
        var str=[]
        for( var i=0;i<20;i++){
                str[i]=i+1;
            }
           console.log(str);
3、体彩3D :0-9随机3个数,不可重复
           var arr3d=[0,1,2,3,4,5,6,7,8,9]
        var s=""
        var b=[]
        while(true){
            n=parseInt(Math.random()*10)
            if(b.indexOf(arr3d[n])>-1){
                continue;
            }
            i=b.length
            b[i]=arr3d[n]
            if(b.length==3)
            break;
        }console.log(b.join(""))
4、数组去重
        arr1=[23,45,56,23,89,45]
        var s=0
        temparr=[]
        for(var i=0;i<arr1.length;i++){
            if(temparr.indexOf(arr1[i])==-1){
                temparr[s]=arr1[i]
                s++
            }
        }console.log(temparr)

5、生成[1~36]数组,随机选择5个数,不重复
        arr1=[]
        for(var i=0;i<36;i++){
            arr[i]=i+1
        }
        var a=[]
        var b=0
        while(t!=5){
            var n=parseInt(Math.random()*36)
            if(a.indexOf(arr1[i])==-1){
                a[b]=arr1[n]
                b++
            }
        }alert(s)
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值