「这是我参与2022首次更文挑战的第4天,活动详情查看:2022首次更文挑战」。
1.数组的增:
(1).arr.push():
写法:arr.push(新增的内容,新增的内容。。。) 添加到数组的末尾
(2).arr.unshift():
写法:arr.unshift(新增的内容,新增的内容,新增的内容。。。) 添加到数组的开头
2.数组的删:
(1).arr.pop():
删除最后一个
(2).arr.shift():
删除第一个
(3).arr.splice():
删除指定的
写法:arr.splice(操作的下标,删除的个数(包含操作的下标))
注意:如果只写第一个操作的下标,它就会从改下标开始(包含该下标),将后面的数据都删除
3.切割字符串 slice(开始切割的元素下标,切到哪个元素的下标);
注意:包左不包右( slice[))
//例如:
arr = [1,2,3,4,5]
const a = arr.slice(1,3)
console.log(arr); //arr = [1,2,3,4,5]
console.log(a); //arr = [2,3]
- arr.join(分隔符): 拼接(将数组里面的元素按照分隔符连成字符串)
const arr1 = [1,2,3]
const a = arr1.join(',')
const b = arr1.join('')
console.log(a);//1,2,3
console.log(b);//123
console.log(arr1);//[1,2,3]
注意:不会改变原数组
- arr.reverse():翻转数组
const arr1 = [1,2,3,4,5]
const a = arr1.reverse()
console.log(arr1);//[5, 4, 3, 2, 1]
console.log(a);//[5, 4, 3, 2, 1]
注意:会改变原数组
- arr.sort():数组排序 写法:arr.sort(Function(a,b) {return a-b(从小到大)}) 如果不写默认从小到大,字母会按照字母的顺序a-z排
const arr1 = [4,3,7,2,1]
const arr2 = ["c","d","a"]
const a = arr1.sort()
const b = arr2.sort()
console.log(arr1);//[1, 2, 3, 4, 7]
console.log(arr2);//["a", "c", "d"]
console.log(a);//[1, 2, 3, 4, 7]
console.log(b); //["a", "c", "d"]
注意:会改变原数组
- arr.indexOf():数组去重(去除重复元素,通过判断元素下标的方式)
var fruits = ["Apple", "Orange", "Apple", "Mango"];
var a = fruits.indexOf("Apple");
- forEach:数组遍历
(1).遍历次数等于数组长度
(2).本身无返回值,不需要接收返回
6.获取数组下标:
(1)和indexOf相似,不过index不可以获取对象的
(2)有元素,返回元素下标,没元素,返回-1
(3)return true:找到了,循环结束,返回当前下标
(4)return false:没找到,返回默认值-1
9.every:判断数组中是否所有元素都满足条件
var numbers = [45, 4, 9, 16, 25];
var allOver18 = numbers.every(myFunction);
function myFunction(value, index, array) {
return value > 18;
}
都满足条件返回true,有一个不满足返回false
10.reduce:方法在每个数组元素上运行函数,以生成(减少它)单个值。
写法:数组名.reduce((sum,value,index)=>{},初始值)
var numbers = [45, 4, 9, 16, 25];
var sum = numbers.reduce(myFunction);
document.getElementById("demo").innerHTML = "总和是:" + sum;
function myFunction(total, value, index, array) {
return total + value;
}
(1)sum,上一次返回的结果,默认初始值为第一个值
(2)value当前元素的值,index 当前元素的下标
(3)初始值一般默认为0,如果不给初始值,空数组reduce会报错
(4)返回值:最后一次回调的结果。
11.filter:满足符合条件的所有元素,放入新数组中
var numbers = [45, 4, 9, 16, 25];
var over18 = numbers.filter(myFunction);
document.getElementById("demo").innerHTML = over18;
function myFunction(value, index, array) {
return value > 18;
}
12.concat:合并(连接)数组
const arr1 = [1,2,3]
const arr2 = [4,5,6]
const arr = []
const a = arr.concat(arr1,arr2)
console.log(a);//[1, 2, 3, 4, 5, 6]
13.arr.map():方法通过对每个数组元素执行函数来创建新数组。
var numbers1 = [45, 4, 9, 16, 25];
var numbers2 = numbers1.map(myFunction);
document.getElementById("demo").innerHTML = numbers2;
function myFunction(value, index, array) {
return value * 2;
}
14.some():方法检查某些数组值是否通过了测试。
var numbers = [45, 4, 9, 16, 25];
var someOver18 = numbers.some(myFunction);
function myFunction(value, index, array) {
return value > 18;
}
//结果返回true