七个会修改原数组的方法
- push
- 语法: 数组名.push(数据)
- 作用: 向数组末尾 新增一条数据
- 返回值: 新增数据后最新的数组长-度
var arr=[1,5,5,454,54,5,4]
arr.push("我是push添加的新数据")
console.log(arr);
//自定义push
function push(arr,num) {
arr[arr.length]=num
return arr
}
var result=push(arr,"自定义push添加的数据")
console.log(result);
-
pop
- 语法: 数组名.pop()
- 作用: 删除数组末尾最后一个数据
- 返回值: 被删除的数据
var arr=[1,5,5,454,54,5,4]
console.log(arr.pop());
console.log(arr);
// 自定义
function pop(arr) {
var unm= arr[arr.length-1]
delete arr[arr.length-1]
//arr.length -=1
return unm
}
console.log(pop(arr));
console.log(arr);
-
unshift
- 语法: 数组.unshift(数据)
- 作用: 向数组开头, 添加一个数据
- 返回值: 新增完数据后的一个数组长度
var arr=[1,5,5,454,54,5,4] console.log(arr. unshift("新数据")); console.log(arr); //自定义 function unshift(arr,num) { var newarr =[] newarr[0]=num for (let j = 0; j < arr.length; j++) { newarr[j+1]=arr[j] } return newarr.length } console.log(unshift(arr,"自定义假的新数据"));
* shift
* 删除数组起始位置的元素
* 返回值是被删除的元素
```js
var arr = [1, 2, 3]
// arr.shift()
// console.log(arr);
function shift(arr) {
var temp=arr[0]
for (let i = 0; i < arr.length; i++) {
arr[i]=arr[i+1]
}
arr.length-=1
return temp
}
var result = shift(arr)
console.log(result);
-
sort
- 语法1: 数组名.sort()
- 作用: 将数组内的数据, 转换为 字符串, 然后一位一位的对比
- 语法2: 数组名.sort(function (a, b) { return a - b })
- 作用: 会按照数字的 从小到大
- 语法3: 数组名.sort(function (a, b) { return b - a })
- 作用: 和 语法2相反, 从大到小
- 返回值: 返回一个排序好的数组
- 注意: sort 使用后能够修改原数组
-
indexOf
- 语法:
数组名.indexOf(要检查的数据); 数组名.indexOf(要检查的数据, 开始索引) - 作用: 从前到后检查该数据第一次在该数组内出现的索引位置
- 返回值: 如果在数组内找到了该数据, 那么会返回该数据第一次出现的索引位置, 没找到返回 -1
- 语法:
-
splice (作用类似于 剪切)
-
语法1: 数组.splice(开始索引, 剪切多少个)
-
功能: 剪切
-
语法2: 数组.splice(开始索引, 剪切多少个, 数据1, 数据2, 数据3.....)
-
功能: 将 第三个参数开始到结束的所有内容, 替换你指定的区域内容
-
返回值: 剪切到的内容
-
-
reverse
- 删除数组起始位置的元素
- 返回值是被删除的元素
var arr = [1, 2, 3,4]
// arr.reverse()
// console.log(arr);
function reverse(arr) {
for (let i = 0; i < arr.length/2; i++) {
var temp = arr[i]
arr[i]=arr[arr.length-1-i]
arr[arr.length-1-i] =temp
}
return arr
}
var result = reverse(arr)
console.log(result);