Js 中对于数组的操作

声明对象、新增元素、删除元素、追加元素、修改元素、清空列表

1. 声明对象

var arrayObject=[];
var arrayObject=new Array();
var arrayObject=new Array(size);
var arrayObject=new Array(element0, element1, ..., elementn);

2. 新增元素

2.1 unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

语法

arrayObject.unshift(newelement1,newelement2,....,newelementX)
参数	     描述
newelement1	 必需。向数组添加的第一个元素。
newelement2	 可选。向数组添加的第二个元素。
newelementX	 可选。可添加若干个元素。

说明
unshift() 方法将把它的参数插入 arrayObject 的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。
请注意,unshift() 方法不创建新的数组,而是直接修改原有的数组。unshift() 方法无法在 Internet Explorer 中正确地工作!

2.2 push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

语法

arrayObject.push(newelement1,newelement2,....,newelementX)

说明
push() 方法可把它的参数顺序添加到 arrayObject 的尾部。它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。
提示:该方法会改变数组的长度。

3. 删除元素

3.1 shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

语法

arrayObject.shift()

返回值
数组原来的第一个元素的值。

说明
如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。请注意,该方法不创建新数组,而是直接修改原有的 arrayObject。
注释:
该方法会改变数组的长度。

3.2 pop() 方法用于删除并返回数组的最后一个元素。

语法

arrayObject.pop()

返回值
arrayObject 的最后一个元素。

说明
pop() 方法将删除 arrayObject 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值。如果数组已经为空,则 pop() 不改变数组,并返回 undefined 值。

4. 数值转换为字符串

4.1 join() 方法用于把数组中的所有元素放入一个字符串。

元素是通过指定的分隔符进行分隔的。

语法

arrayObject.join(separator)

separator	可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。

返回值
返回一个字符串。该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。

4.2 toString() 方法可把数组转换为字符串,并返回结果。

语法

arrayObject.toString()

返回值
arrayObject 的字符串表示。返回值与没有参数的 join() 方法返回的字符串相同。

5. splice() 方法

定义和用法
splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。

注释:
该方法会改变原始数组。

语法

arrayObject.splice(index,howmany,item1,.....,itemX)

参数       	        描述
index	            必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany   	        必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX	可选。向数组添加的新项目。

返回值
Array:包含被删除项目的新数组,如果有的话。

说明
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。
如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。

注释:
请注意,splice() 方法与 slice() 方法的作用是不同的,splice() 方法会直接对数组进行修改。

6. slice() 方法

定义和用法
slice() 方法可从已有的数组中返回选定的元素。

语法

arrayObject.slice(start,end)

参数及描述
start 必需。
规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
end 可选。
规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

返回值
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

说明
请注意,该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。

提示和注释
注释:您可使用负值从数组的尾部选取元素。
注释:如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。

7. concat() 方法

定义和用法
concat() 方法用于连接两个或多个数组。
该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

语法

arrayObject.concat(arrayX,arrayX,......,arrayX)

参数	描述
arrayX	必需。该参数可以是具体的值,也可以是数组对象。可以是任意多个。

返回值
返回一个新的数组。该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的。如果要进行 concat() 操作的参数是数组,那么添加的是数组中的元素,而不是数组。
在本例中,我们创建了两个数组,然后使用 concat() 把它们连接起来:

<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"

document.write(arr.concat(arr2))

</script>

输出结果

George,John,Thomas,James,Adrew,Martin

提示:
此时的arr并未改变,而是 arr.concat(arr2) 的返回值是包含了二者的列表。

详情参考链接: JavaScript Array 对象 https://www.w3school.com.cn/jsref/jsref_obj_array.asp

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章