数组的基础用法
var list = [1,2,3,4,5,6,7]
//push 往数组最后一个位置追加元素
// list.push(6)
// console.log(list);
//unshift 往数组第一个位置追加元素
// list.unshift(6)
// console.log(list);
pop 移除数组中最后一个元素,并返回这个被删的元素
var arr = list.pop()
console.log(arr); // 7
shift 移除数组中第一个元素,并返回这个被删的元素
var arr = list.shift()
console.log(arr); // 7
splice 移除数组某个位置的元素,可以移除多个
参数1: 要开始删除的索引位置
参数2: 表示要删除几个
参数3往后的 表示要替补的元素, 可以是多个
var arr = list.splice(1,1)
console.log(arr); // 2
console.log(list); // 1, 3, 4, 5, 6, 7
slice
参数1:切割的起始位置 (包含该元素) 索引
参数2:切割的结束位置(不包含该元素)
如果只传一个参数,表示从这个位置截取到最后一位置
var arr = list.slice(1,4)
console.log(arr); //2 3 4
console.log(list);
concat 实现数组拼接,返回新数组,不影响原数组
var arr = list.concat(9,8,7)
console.log(arr); //1, 2, 3, 4, 5, 6, 7, 9, 8, 7
console.log(list); //1, 2, 3, 4, 5, 6, 7
reverse 数组反转,返回新数组,会影响元素组
var arr = list.reverse()
console.log(arr); //7, 6, 5, 4, 3, 2, 1
console.log(list); //7, 6, 5, 4, 3, 2, 1
sort 数组排序 数字
var arr = list.sort()
console.log(arr); //1, 2, 3, 4, 5, 6, 7
join 把数组用字符串拼接
var arr = list.join(' ')
console.log(arr); // '-' 1-2-3-4-5-6-7; ' ' 1 2 3 4 5 6 7
toString: 把数组转成字符串
var arr = list.toString()
console.log(arr); //1,2,3,4,5,6,7
indexOf 查询某个元素的索引位置
如果元素不存在,返回-1,可以通过此方法判断元素存不存在
var arr = list.indexOf(4)
console.log(arr); //3
reduce 用来迭代一个数组,并且把它累积到一个值中。第一个参数是累加器,第二个是当前值 第三个当前索引
const arr = ["b", "c","b", "c","a", "b", "c"]
const list = arr.reduce((allname,name)=>{
if (name in allname) {
allname[name]++; //如果name在这个allname对象出现两次里,从1的基础++否则返回name等于1
}else{
allname[name]= 1
}
return allname
},{})
console.log(list);