1.concat 用于拼接数组。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11, 22, 33]
let arr2 = [44, 55, 66]
function concat(a1, a2) {
let a3 = []
//循环第一个数组
for (let i = 0; i < a1.length; i++) {
//将第一个数组中的数据,添加给a3
a3[i] = a1[i]
}
//循环第二个数组
for (let i = 0; i < a2.length; i++) {
//注意:数组的最后一个下标是length-1
//如果length不减1,就是最后一个位置的下一个位置。
a3[a3.length] = a2[i]
}
return a3
}
let arr3 = concat(arr1, arr2)
console.log(arr3);
</script>
</body>
</html>
2.fill 将数组中的每一位元素的值,替换成固定的值。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11, 22, 33]
function fill(arr, val) {
//循环数组,将数组中的每一位元素的值,替换成固定的值
for (let i = 0; i < arr.length; i++) {
arr[i] = val
}
}
console.log(arr1);
fill(arr1, '呵呵')
console.log(arr1);
</script>
</body>
</html>
3.includes 判断数组中是否存在指定的数。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11, 22, 55, 33, 44, 55, 66, 77, 88]
function includes(arr, val) {
//循环数组
for (let i = 0; i < arr.length; i++) {
//判断数组中是否存在指定的数
if (arr[i] === val) {
// return关键字在返回值的同时,也就跳出了整个方法
return true
}
}
return false
}
console.log(includes(arr1, 55));
console.log(includes(arr1, 555));
</script>
</body>
</html>
4.indexOf 判断数组中是否存在指定的数,有返回下标,没有返回-1.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11, 22, 55, 33, 44, 55, 66, 77, 88]
function indexOf(arr, val) {
//循环数组
for (let i = 0; i < arr.length; i++) {
//判断数组中是否存在指定的数
if (arr[i] === val) {
// return关键字在返回值的同时,也就跳出了整个方法
return i
}
}
return -1
}
console.log(indexOf(arr1, 55));
console.log(indexOf(arr1, 555));
</script>
</body>
</html>
5.lastIndexOf 从后往前查询是否存在指定的数。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11, 22, 55, 33, 44, 55, 66, 77, 88]
function lastIndexOf(arr, val) {
// 反过来循环数组
for(let i=arr.length-1;i>=0;i--){
if(arr[i]===val){
return i
}
}
return -1
}
console.log(lastIndexOf(arr1, 55));
console.log(lastIndexOf(arr1, 555));
</script>
</body>
</html>
6.join 用于以指定分隔符拼接。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = ['空调','冰箱','洗衣机','微波炉']
// 注意:方法的形参,可以定义默认值
function join(arr,split=','){
let str = ''//定义一个字符串,用于返回结果
for(let i=0;i<arr.length;i++){
str += arr[i]
//判断何时拼接分隔符
if(i<arr.length-1){
str += split
}
}
return str
}
console.log(join(arr1,'--'));
console.log(join(arr1,''));
console.log(join(arr1));
</script>
</body>
</html>
7.push 在数组的最后加一位,添加新的数据。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11,22,33,44,55]
function push(arr,val){
// 在数组的最后加一位,添加新的数据
arr[arr.length] = val
}
push(arr1,66)
console.log(arr1);
</script>
</body>
</html>
8.pop 删除最后一个元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11,22,33,44,55]
function pop(arr){
//获取最后一位元素
let val = arr[arr.length-1]
//数组的长度-1,就是删除最后一个空间
arr.length = arr.length-1
return val
}
let n1 = pop(arr1)
// 删除后的数组
console.log(arr1);
// 删除的元素
console.log(n1);
</script>
</body>
</html>
9.unshift 在数组的第一个位置上添加一个新的元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11,22,33,44,55]
function unshift(arr,val){
// 从后往前循环整个数组
for(let i=arr.length;i>0;i--){
// 数组中的每一位数往后挪一位
arr[i] = arr[i-1]
}
// 再从新设置第一位数
arr[0] = val
}
unshift(arr1,66)
console.log(arr1);
</script>
</body>
</html>
10.shift 删除数组中第一个元素。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = [11,22,33,44,55]
function shift(arr){
let val = arr[0] //获取数组中的第一位数
// 循环数组,后面数往前挪
for(let i=0;i<arr.length-1;i++){
arr[i] = arr[i+1]
}
// 再删除最后一个
arr.length = arr.length-1
return val
}
let n2 = shift(arr1)
console.log(arr1);
console.log(n2);
</script>
</body>
</html>
11.reverse 用于前后的值进行互换。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = ['a','b','c','d','e','f','g']
function reverse(arr){
for(let i=0;i<parseInt(arr.length/2);i++){
// 数组中,前后的值进行互换
let temp = arr[i]
arr[i] = arr[arr.length-1-i]
arr[arr.length-1-i] = temp
}
}
reverse(arr1)
console.log(arr1);
</script>
</body>
</html>
12.slice 用于截取数组中的值,传两个参数,开始位置和结束位置。取值是开始位置到结束位置-1
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = ['a','b','c','d','e','f','g']
function slice(arr,start,end){
//定义返回的数组
let arr2 = []
// 在for循环中,循环变量可以定义多个
for(let i=start,j=0;i<end;i++,j++){
// 将arr数组中,执行区间里面的数据,添加到arr2中
arr2[j] = arr[i]
}
return arr2
}
let arr3 = slice(arr1,2,5)
console.log(arr3);
</script>
</body>
</html>
13.splice 删除一段数组中的数值,传两个参数,开始位置和截取的长度。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
let arr1 = ['a','b','c','d','e','f','g','h','i','j','k']
function splice(arr,start,len){
// 定义返回的数组
let arr2 = []
// 循环删除的部分
for(let i=start,j=0;i<arr.length;i++,j++){
//先将删除的部分,添加到新的数组中
if(i<start+len){
arr2[j] = arr[i]
}
// 将删除部分后面的元素往前挪
arr[i] = arr[i+len]
}
//去掉后面重复的部分
arr.length = arr.length-len
return arr2
}
console.log(arr1);
let arr3 = splice(arr1,2,3)
console.log(arr1);
console.log(arr3);
</script>
</body>
</html>