玖叶教程网

前端编程开发入门

Javascript学习之数组(Array)方法论

Javascript学习之数组(Array)方法论(一),改变原数组的方法

### 创建数组

字面方法定义
```
let arr = [1,2,3]
```
构造数组方式
```
let arr1 = Array()//[]
let arr2 = Array()//[,,]
let arr3 = Array//[1,2,3]
```

### 数组方法

####改变原数组

可以改变原数组的方法es5有9个,在es6中有一个

```
ES5:
arr.splice()//删除元素,并向数组添加新元素
arr.sort()//对数组的元素进行排序
arr.pop()//删除并返回数组的最后一个元素
arr.shift()//删除并返回数组的第一个元素
arr.push()//向数组的末尾添加一个或更多元素,并返回新的长度
arr.unshift()//向数组的开头添加一个或更多元素,并返回新的长度
arr.reverse()//颠倒数组中元素的顺序
ES6:
arr.copyWithin()//拷贝
```

arr.splice()//删除元素,并向数组添加新元素

```
arrayObject.splice(index,howmany,item1,.....,itemX)
index	必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany	必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX	可选。向数组添加的新项目。
eg:
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
arr.splice(2,0,"William")
document.write(arr + "<br />")
```

arr.sort()//对数组的元素进行排序

```
arrayObject.sort(sortby)
sortby	可选。规定排序顺序。必须是函数。
eg:
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
document.write(arr + "<br />")
document.write(arr.sort())
```

arr.pop()//删除并返回数组的最后一个元素

```
arrayObject.pop()
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr)
document.write("<br />")
document.write(arr.pop())
document.write("<br />")
document.write(arr)
```

arr.shift()//删除并返回数组的第一个元素

```
arrayObject.shift()
eg:
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr + "<br />")
document.write(arr.shift() + "<br />")
document.write(arr)
```

arr.push()//向数组的末尾添加一个或更多元素,并返回新的长度

```
arrayObject.push(newelement1,newelement2,....,newelementX)
newelement1	必需。要添加到数组的第一个元素。
newelement2	可选。要添加到数组的第二个元素。
newelementX	可选。可添加多个元素。
eg:
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr + "<br />")
document.write(arr.push("James") + "<br />")
document.write(arr)
```

arr.unshift()//向数组的开头添加一个或更多元素,并返回新的长度

```
arrayObject.unshift(newelement1,newelement2,....,newelementX)
newelement1	必需。向数组添加的第一个元素。
newelement2	可选。向数组添加的第二个元素。
newelementX	可选。可添加若干个元素。
eg:
var arr = new Array()
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr + "<br />")
document.write(arr.unshift("William") + "<br />")
document.write(arr)
```

arr.reverse()//颠倒数组中元素的顺序

```
arrayObject.reverse()
eg:
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr + "<br />")
document.write(arr.reverse())
```

arr.copyWithin()//拷贝

```
array.copyWithin(target, start, end)
target	必需。复制到指定目标索引位置。
start	可选。元素复制的起始位置。
end	可选。停止复制的索引位置 (默认为 array.length)。如果为负值,表示倒数。
eg:
复制数组的前面两个元素到第三和第四个位置上:
let fruits = ["Banana", "Orange", "Apple", "Mango", "Kiwi", "Papaya"];
fruits.copyWithin(2, 0, 2);
//Banana,Orange,Banana,Orange,Kiwi,Papaya

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言