一、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)