1.slice()方法
var alphabets=['a','b','c','d','e']
var letter=alphabets.slice(0,4)
var letter2=alphabets.slice(1,3)
console.log(letter); //输出结果 ['a', 'b', 'c', 'd']
console.log(letter2); //输出结果 ['b', 'c']
从已有的数组中返回选定的元素 提取字符串的某个部分,并以新的字符串返回被提取的部分。 语法: array.slice(start, end) 返回的新数组包含 start, 不包含 end
2.split()方法
var str='hello world!'
var newStr=str.split('')
var newStr1=str.split('o')
var newStr2=str.split(' ')
console.log(newStr); //输出结果 ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', '!']
console.log(newStr1); //输出结果 ['hell', ' w', 'rld!']
console.log(newStr2); //输出结果 ['hello', 'world!']
把一个字符串分割成字符串数组 语法: string.split(separator,limit) separator分隔符,limit位数
3.splice()方法
var alphabets=['a','b','c','d','e']
var newArray=alphabets.splice(2,2) //从2开始截取2个
console.log(newArray); //输出结果 ['c', 'd'] //截取结果
console.log(alphabets); //输出结果 ['a', 'b', 'e'] //删除结果
var alphabets1=['a','b','c','d','e']
var newArray1=alphabets1.splice(2,2,'f','g')
console.log(alphabets1); //输出结果 ['a', 'b', 'f', 'g', 'e']
4.reduce()方法
回调函数参数(prev,next,index,currenArr)
1.perv代表上一次调用回调时的返回值,或者初始值init。
2.next代表当前正在处理的数组元素.
3.index代表当前执行元素的下标.
4.currentArr代表当前循环的数组元素
let arr=[2,3,4,5]
let result =arr.reduce((prev,next)=>{
return prev + next
})
console.log(result); //14
let arr=[{name:'动物园',price:50},{name:'植物园',price:20},{name:'博物馆',price:70},{name:'天文馆',price:92}]
let priceSum=arr.reduce((prev,next)=>{
return prev + next.price
},0)
console.log(`总价格是:${priceSum}`);//总价格是:232
let arr = [1,3,4,3,4,2,1,5,6];
let result = arr.reduce((prev,next)=>{
if(!prev.includes(next)){
prev.push(next);
}
return prev
},[])
console.log(result);// [1, 3, 4, 2, 5, 6]
let result = arr.reduce((prev,next)=>{
next in prev ? ++prev[next] :prev[next]=1
return prev
},{})
console.log(result);// {味: 2,子: 2,小: 1,橘: 2,犬: 1,的: 1}
5.map()方法
var numList = [1, 2, 3, 4, 5, 6, 7];
var newArray = [];
numList.map((item) => {
newArray.push(++item);
});
console.log(newArray); //输出结果 [2, 3, 4, 5, 6, 7, 8]
var arrayObj = [
{ name: "小明", age: 16, sex: "男" },
{ name: "小红", age: 17, sex: "女" },
{ name: "小白", age: 18, sex: "女" },
];
const map1= arrayObj.map((item)=>{
return item.name
})
console.log(map1); //输出结果 ['小明', '小红', '小白']
6.every()方法
every 方法会对数组的每一项都进行一次callback 回调函数 数组的每一项都满足回调函数的条件返回true,当遇到不符合条件时项会即刻返回false 判断数组是否每一项都满足指定条件
7.some()方法
8.forEach()方法
9.filter方法
10.find()方法
返回符合条件的对象后面不再执行(返回第一个符合条件的对象) 没有符合条件的返回-1
11.findIndex()方法
var array = [1, 2, 3, 4, 5, 6];
var newArray = array.findIndex((item) => {
return item == 3;
});
console.log(newArray); //输出结果 2
var list = [
{ lable: "a", name: "张三" },
{ lable: "b", name: "李四" },
{ lable: "c", name: "王明" },
{ lable: "d", name: "李华" },
];
const index = list.findIndex((item)=>item.lable === 'f')
console.log(index); //输出结果 -1
返回符合条件的下标,后面不再执行 没有符合条件的返回-1
12.includes()方法
13.new Set()方法
var set =new Set([1,1,2,3,4,4]);
[...set] //[1,2,3,4]
set.size
set.add(value) //添加 返回set结构自身
set.delete(value) //删除 返回布尔
set.has(value) //判断set结构是否有此值 返回布尔
set.clear() //清除所有值 没有返回值
keys():返回键名的
values():返回键值
entries():返回键值对
forEach():使用回调函数遍历每一项