javascript
数组的创建
1.使用Array构造函数
- 简单声明
var arr=new Array()
- 指定长度
var arr=new Array(5)
- 创建即添加元素
var arr=new Array("元素一","元素二",.......)
2.使用数组字面量
var arr=[]
数组的迭代
- 使用for循环迭代出数组中的每一个元素
for(var i = 0; i < arr.length; i++){
console.log(arr[i])
}
添加元素
在javascript中数组是一个可以修改的对象,如果添加元素,他就会动态的增长
数组末尾插入
- 因为js数组的特点,不像c,java那样存在数组下标越界,所以即使索引超出数组的范围也不会报错,超出的部分都是undefined
const arr = ["a","b","c"]
console.log(arr[4]) //undefined
所以在数组末尾添加元素就可以
const arr = ["a","b","c"]
arr[arr.length] = "d"
console.log(arr) (4)["a","b","c","d"]
- 使用push方法
参数:element1, ..., elementN
返回值:数组新的长度(length)
是否影响原数组:影响
const arr = []
arr.push("a")
// 这样就把a添加进了数组中
console.log(arr) //[a]
// 添加多个元素
arr.push("b","c")
// 此时数组中就有三个元素a,b,c
console.log(arr) //(3)["a","b","c"]
// 返回值为新数组长度
const result = arr.push("d")
console.log(arr) // (4)["a","b","c","d"]
console.log(arr.length) // 4
数组开头插入元素
- 在数组开头插入元素不像在末尾插入那样简单,对于一个非空数组而言,它的首位是有值的,末尾是空出的。如果要在开头插入e,就要数组中的所有值向右移动一位。通过循环,从数组的最后一位开始,将对应的前一个(i-1)元素的值赋给它(i),最后空出索引为0的位置放我们添加的元素,
// 为了测试,将我们的方法挂载到原型上
Array.prototype.insertFirstPosition = function(target){
for(let i = this.length; i >= 0; i--){
this[i] = this[i-1]
}
this[0] = target
}
const arr = ["a", "b"]
arr.insertFirstPosition("c")
console.log(arr); // (3) ["c", "a", "b"]
unshift.PNG
- 同样的js也为我们提供了相应的方法
unshift方法:可以直接将值插入到数组的开头
参数:element1, ..., elementN
返回值:数组新的长度(length)
是否影响原数组:影响
const arr = ["a", "b"]
const result1 = arr.unshift("c")
console.log(arr); //(3) ["c", "a", "b"]
// 返回值为新数组的长度
console.log(result1); // 3
const result2 = arr.unshift("d", "e")
console.log(arr); // (5) ["d", "e", "c", "a", "b"]
console.log(result2); // 5
数组末尾删除元素
pop方法:可以直接删除数组末尾的元素
参数:无
返回值:被删除的元素
是否影响原数组:影响
const arr = ["a", "b"]
var res = arr.pop()
console.log(arr) // ["a"]
console,log(res) // b
网友评论