数组反转:
语法:数组变量名.reverse()
let arr = [4, 3, 2, 1, 10, 30]
arr.reverse()
console.log(arr);
清空数组:
方法一:arr = [] 数组为空
方法二:arr.length = 0 数组长度为0
数组转字符串:
语法:变量名.join()
let arr = ['喜洋洋', '美羊羊', '灰太狼']
// arr.join(字符串之间的分隔号,要引号包裹)
let newArr = arr.join('-')
let newArr = arr.join('')
console.log(newArr);
数组排序:
语法:arr.splice(索引号,删除个数,'追加的元素',‘追加的元素’。。。。)
let arr = ['李狗蛋', '张翠花', '赵铁柱', '王小二']
arr.splice(1, 2) //此处删除了索引为1的张翠花,2:删除两个,连赵铁柱一起删除
console.log(arr);
arr.splice(1, 2, '喜洋洋', '灰太狼', '熊大') //删除2个,追加3个
console.log(arr);
交换变量数据:
[a,b] = [b,a]
let a = 1
let b = 10; //此处一定要分号分割
[a, b] = [b, a]
console.log(a, b);
展开运算符:
let obj1 = {
name: '喜洋洋',
age: 18,
}
let obj2 = { ...obj1 }
obj2.name = '灰太狼'
console.log(obj1); //喜洋洋 18
console.log(obj2); //灰太狼 18
let arr = [1, 2, 3, 4, 5, 6, 7, 8]
// 数学方法 Math.max
console.log(Math.max(...arr));
for Each 数组遍历:
-
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。
-
注意: forEach() 对于空数组是不会执行回调函数的。 语法:
arr.forEach(function (v, i) {
})
// 数组每项加10 foEach循环遍历方法
let arr = [4, 9, 0, 10, 240, -12, 98]
let newArr = []
arr.forEach(function (v, i) {
newArr.push(v + 10)
})
console.log(newArr);
map数组遍历:
* map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
* map() 方法按照原始数组元素顺序依次处理元素。
* 注意: map() 不会对空数组进行检测。
* 注意: map() 不会改变原始数组。
// let arr = [1, 2, 3, 4, 5, 6]
// let newArr = arr.map(function (v, i) { //新建一个变量接map生成的新数组
// return v + 10
// })
// console.log(arr);
// console.log(newArr);
filter遍历数组:
方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。(返回数组,包含了符合条件的所有元素。如果没有符合条件的元素则返回空数组。 注意点: 1.filter() 不会改变原始数组。 2.filter() 不会对空数组进行检测。
// 去掉空字符串和0值
// let arr = [13, 0, '', 90, 78, '', '']
// let newArr = arr.filter(function (v, i) {
// return v !== '' && v !== 0
// })
// console.log(newArr);
// 数组去重
arr.indexOf() 数组中第一次出现的位置
let arr = [1, 1, 2, 3, 4, 4, 5, 6, 6, 6, 6, 7, 7, 8, 9, 9, 9]
let newArr = arr.filter(function (v, i) {
return arr.indexOf(v) === i
})
console.log(newArr);