js数学方法
凯 4/26/2024 js
# 1.数学方法
//获取圆周率
Math.PI
//向上取整
Math.ceil(99.1) //100
//向下取整
Math.floor(99.91) //99
//获取随机数 0-1的随机数, 不包含0和1
Math.random()
//四舍五入 注意 结果是一个字符串(保留两位)
let num4 = 33.3333.toFixed(2)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 获取0-100的随机数 包含0和100
Math.floor(Math.random()*(101)
1
包含起点和终点的公式
Math.floor(Math.random()*(终点值-起点值+1)+起点值
1
# 2.数组
# 1.数组的定义方式
//字面量
let arr = [111,222,333]
//
let arr = new Array(1,2,3)
1
2
3
4
2
3
4
# 2.数组取值
let arr = [11,22,33]
arr[2]
1
2
2
# 3.数组的遍历
arr.length; //长度
1
2
2
let arr = [111,222,333,4]
for(let i=0;i<arr.length-1;i++){
console.log(arr[i])
}
1
2
3
4
2
3
4
# 案例
let userList=[
{name:'小明',gender:'男',age:20},
{name:'小红',gender:'女',age:20},
{name:'小强',gender:'男',age:20}
]
1
2
3
4
5
2
3
4
5
<body>
<div class="box">
</div>
<script>
let userList = [
{ name: '小明', gender: '男', age: 20 },
{ name: '小红', gender: '女', age: 20 },
{ name: '小强', gender: '男', age: 20 }
]
let boxDom = document.querySelector('.box')
let allStr = ''
for(let i = 0;i<userList.length;i++){
let str = '<p>姓名:'+userList[i].name+' 性别:'+userList[i].gender+' 年龄:'+userList[i].age+'</p>'
console.log(str);
//拼接输出
boxDom.innerHTML += str;
//用变量输出
allStr += str
boxDom.innerHTML = allStr;
}
</script>
</body>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 3.数组的内置方法
# 1.push
作用:末尾增加元素
返回值:数组的新长度
特点:修改原数组
语法:
arr.push()
1
案例:
let arr = [100,200]
console.log(arr.push(300,400,500)); //5
console.log(arr); //[100, 200, 300, 400, 500]
1
2
3
4
2
3
4
# 2.pop
作用:末尾删除元素
返回值:被删除的元素
特点:要修改原数组
语法:
arr.pop()
1
案例:
let arr = [100,200]
console.log(arr.pop()); //200
console.log(arr); //[100]
1
2
3
4
2
3
4
# 3.unshift
作用:前面增加元素
返回值:数组的新长度
特点:要修改原数组
语法:
arr.unshift()
1
案例:
let arr = [100,200]
console.log(arr.unshift(30,50)); //4
console.log(arr); // [30, 50, 100, 200]
1
2
3
4
2
3
4
# 4.shift
作用:前面删除元素
返回值:被删除的元素
特点:要修改原数组
语法:
arr.shift()
1
案例:
let arr = [100,200]
console.log(arr.shift()); //100
console.log(arr); //[200]
1
2
3
2
3
# 5.splice
作用:在任意位置 增加 删除 替换元素
返回值:被删除的元素组成的数组
特点:要修改原数组
语法:
arr.splice(索引位置,删除掉元素个数,新增的元素值1,新增元素值2,新增····)
1
案例:
let arr = [100,200,300,400,500]
consolelog(arr.splice(1,1)); //[200]
console.log(arr); //[100, 300, 400, 500]
1
2
3
2
3
let arr = [100,200,300,400,500]
arr.splice(1,1,1000,2000); //[200]
console.log(arr); //[100,1000,2000, 300, 400, 500]
1
2
3
2
3
let arr = [100,200,300,400,500]
arr.splice(1,0,1000,2000); // []
console.log(arr); //[100,1000,2000, 200,300, 400, 500]
1
2
3
2
3
let arr = [100,200,300,400,500]
arr.splice(2,2); //[300,400]
console.log(arr); //[100,200,500]
1
2
3
2
3
# 6.concat
作用:将后面数组的元素 合并 到数组1上
返回值:合并后的新数组
特点:不改变原数组
语法:
数组1.concat(数组2,数组3)
let 合并后的新数组 = 原数组.concat(数组2,数组3)
1
2
2
案例:
let arr = [100,200,300,400,500]
let arr1 = [1000,2000]
let arr2 = [3000,4000]
// 合并
let newArrr = arr.concat(arr1,arr2)
console.log(newArrr);//[100, 200, 300, 400, 500, 1000, 2000, 3000, 4000]
console.log(arr); // [100,200,300,400,500]
console.log(arr1); //[1000,2000]
console.log(arr2); //[3000,4000]
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 阶段练习:
let userList = [
{ sno:100,name: '罗美洁', gender: "女", age: 21 },
{ sno:101,name: '彭代晶', gender: '男', age: 22 },
{ sno:105,name: '陈玉婷', gender: '女', age: 23 }
]
let userList1 = [
{ sno:107,name: '刘玉清', gender: "女", age: 22 },
]
//1.请添加张敏敏102 刘欢104
let user1 = { sno: 102, name: '张敏敏', gender: "女", age: 21 }
let user2 = { sno: 104, name: '刘欢', gender: "男", age: 21 }
userList.splice(2, 0, user1,user2)
console.log(userList);
//2.请修改 101的同学 年龄:23
//方法一
userList[i].age=23;
//方法二
let user3 = { sno: 101, name: '彭代晶', gender: '男', age: 23 }
userList.splice(1, 1, user3)
console.log(userList);
//3.请在尾部添加 106徐练 信息
let user4 = { sno: 106, name: '徐练', gender: "女", age: 21 }
userList.push(user4)
console.log(userList);
//4.请删除 106同学的信息
userList.pop()
console.log(userList);
//5.请在前面添加一个 99 徐练
userList.unshift(user4)
console.log(userList);
//6.请删除最前面的 99徐练的信息
userList.shift()
console.log(userList);
//7.请合并另userList1 数组到 userList 中 ,打印输出userList
userList = userList.concat(userList1)
console.log(userList);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44