欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js基础之数组API

程序员文章站 2022-03-04 20:42:52
...

js基础之数组API

以下表格中添加*的方法不会改变原数组。

属性 描述
*concat() 连接两个或更多的数组,并返回结果
*join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔
pop() 删除并返回数组的最后一个元素
push() 向数组的末尾添加一个或更多元素,并返回新的长度
shift() 删除并返回数组的第一个元素
unshift() 向数组的开头添加一个或更多元素,并返回新的长度
reverse() 颠倒数组中元素的顺序
sort() 对数组的元素进行排序
splice() 删除元素,并向数组添加新元素
*toString() 把数组转换为字符串,并返回结果
*slice() 从某个已有的数组返回选定的元素

一、concat

var arr = [1, 2, 3]
var arr1 = [4, 5, 6]
var arr3 = [7, 8, 9]
// concat(arrayX,arrayX,......,arrayX)可以连接多个数组
var arr2 = arr.concat(arr1, arr3)
console.log(arr2)  // [1, 2, 3, 4, 5, 6, 7, 8, 9]

二、join

var arr = [1, 2, 3]
// join(separator) separator可选参数,不传默认为","
var str = arr.join()
var str1 = arr.join("-")
console.log(str) // 1,2,3
console.log(str1) // 1-2-3

三、toString

var arr = [1, 2, 3]
var str = arr.toString()
// 返回值与没有参数的join()方法返回的字符串相同
console.log(str1)  // 1,2,3

四、slice

var arr = [1, 2, 3]
// slice(start,end) start为必传,规定从何处开始选取
// end可选,规定从何处结束选取,不包含当前end元素。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素
// start或end如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推
var arr5 = arr.slice(1, 2) // [2]
var arr5 = arr.slice(-3, -1) // [1, 2]
var arr5 = arr.slice(-3) // [1, 2, 3]

五、push

var arr = [1, 2, 3]
var arr1 = [1, 2, 3]
var len = arr.push(4)
var len1 = arr.push(4, 5)
// push返回把指定的值添加到数组后的新长度
console.log(len) // 4
console.log(len1) // 5
// 原数组改变, 在末尾增加相应的元素
console.log(arr) // [1, 2, 3, 4]
console.log(arr1) // [1, 2, 3, 4, 5]

六、pop

var arr = [1, 2, 3]
var number = arr.pop()
// pop返回数组最后一个元素
console.log(number) // 3
// 原数组改变, 在末尾删除一个元素
console.log(arr) // [1, 2]

// 如果数组已经为空,则 pop() 不改变数组,并返回 undefined 值
var arr1 = []
var num = arr6.pop()
console.log(num) // undefined
console.log(arr1) // []

unshift及shift与push及pop同理,只是是从数组头部改变

七、reverse

var arr = [1, 2, 3]
// 颠倒数组中元素的顺序
var newArr = arr.reverse()
console.loig(arr) // [3, 2, 1]
console.loig(newArr) // [3, 2, 1]

八、sort

var arr = [3, 2, 1]
// sort(sortby) sortby可选,必须是个函数
var newArr = arr.sort((a, b) => a - b)
console.log(arr) // [1, 2, 3]
console.log(newArr) // [1, 2, 3]

var arr1 = [8, 56, 1, 45, 3, 25]
// sort默认字母顺序进行排序
console.log(arr1.sort()) // [1, 25, 3, 45, 56, 8]

九、splice

var arr = [2, 3, 45, 6, 7, 8]
// splice(index,howmany,item1,.....,itemX) index下标 howmany要删除的项目数量,如果设置为0就不会删除
// item1,.....,itemX 可选, 向数组添加的新项目
// 从下标1开始截取,截取1个
var newArr = arr.splice(1, 1)
console.log(newArr) // [3]
console.log(arr) // [2, 45, 6, 7, 8]

var arr1 = [2, 3, 45, 6, 7, 8]
// 从下标1开始截取,截取1个 再在当前位置添加一个1
var newArr1 = arr.splice(1, 1, 1)
console.log(newArr1) // [3]
console.log(arr1) // [2, 1, 45, 6, 7, 8]

var arr2 = [2, 3, 45, 6, 7, 8]
// 从下标1开始截取,截取0个 再在当前位置添加1, 3, 4, 5
var newArr2 = arr.splice(1, 0, 1, 3, 4, 5)
console.log(newArr2) // []
console.log(arr2) // [2, 1, 3, 4, 5, 3, 45, 6, 7, 8]
相关标签: js基础 js