目录
数组
存储多个数据的容器。
声明数组
let arr=[]
声明并赋值
let arr=[`q`,`pingguo`,`12`]
console.log(arr)
数组存在数组下标,数组下标从0开始。
打印数组中第二个数据:
console.log(arr[1])
除了声明以外的数组名后面的“[ ]”里的数代表数组里的第几个数。(从0开始算)
循环加强
for in
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
for(let i in arr){
console.log(i);
}
以任意顺序迭代一个对象的除Symbol以外的可枚举属性,包括继承的可枚举属性。
也可以用来输出数组中的每一个数据:
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
for(let i in arr){
console.log(arr[i]);
}
for of
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
for(let k of arr){
console.log(k);
}
在可迭代对象(包括 Array,Map,Set,String,TypedArray,arguments 对象等等)上创建一个迭代循环,调用自定义迭代钩子,并为每个不同属性的值执行语句
向数组中添加或者删除元素
向数组末尾添加元素:
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
arr.push(`1000`,`200`,`900`)
console.log(arr);
查看:
在数组前面插入元素:
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
arr.unshift(`22`,`33`,`44`)
console.log(arr);
删除并返回数组的最后一个元素;()
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
let b=arr.pop()//返回值赋给b,可以单独写arr.pop(),将不会有返回值
console.log(arr);
console.log(b)
在首部删除:
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
let b=arr.shift()
console.log(arr);
console.log(b)
删除指定位置元素:
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
arr.splice(1,3)//分别代表从哪儿开始删;删几个
console.log(arr);
在指定位置添加:
let arr=[`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`9`,`guoquyichenghuiyi`]
arr.splice(1,0,`sangsan`,`lisi`)//分别代表从哪儿开始加;添加标注;添加的元素
console.log(arr);
注意:splice默认是删除,必须添加标志才会添加。
合并数组
let arr1=[`1`,`2`,`3`,`4`]
let arr2=[`5`,`6`,`7`]
let arr3=arr1.concat(arr2)//合并后需要有个新的数组用来装,原来两个数组不会有改变
console.log(arr3);
将数组里的东西放在一个字符串里
let arr1=[`1`,`2`,`3`,`4`]
let str=arr1.join()//同样需要接收
console.log(str);
元素将会通过指定符号进行拼接()默认是“,”:
let arr1=[`1`,`2`,`3`,`4`]
let str=arr1.join(`*`)
console.log(str);
颠倒数组元素顺序
let arr1=[`12`,`234`,`56`,`11`]
let n=arr1.reverse()//接收,原来数组也会变
console.log(n);
对数组元素进行排序
sort()
方法就地对数组的元素进行排序,并返回对相同数组的引用。默认排序是将元素转换为字符串,然后按照它们的 UTF-16 码元值升序排序。