1. Array.prototype.push()
语法: arr.push(element1,...,elementN);
描述:该方法用于在数组的尾部添加 1到多个元素
参数:element 需要添加到数组尾部的元素(any)
返回值:返回添加内容后的新长度
tip: 直接修改原数组
var arr = [2, 3, 4];
var oldlength = arr.length
var len = arr.push(22, 11, 11, 11);
console.log(arr);
if (oldlength != len) {
console.log('添加成功');
}
var arr = ['蔡徐坤', '喜欢', ' 唱跳', 'rap', '打篮球'];
alert(arr.length);
arr.push('三年练习生');
console.log(arr);
alert(arr);
alert(arr.length);
##### 2. Array.prototype.pop();
语法: arr.pop()
描述: 该方法用于删除数组中的最后一个元素
返回值:返回被删除的元素,如果数组为空,返回undefined
tip: 直接修改原数组
var arr = [1, 3];
var del = arr.pop();
console.log(arr);
console.log(del);
使用push和pop可以实现类似于栈的效果(LIFO)
var arr = ['蔡徐坤', '喜欢', ' 唱跳', 'rap', '打篮球'];
b = arr.pop();
console.log(b);
alert(arr);
3. Array.prototype.concat();
语法: arr.concat(value1,[...,valueN]); //语法中出现中括号表示这个参数????
参数: value 需要添加到新数组的元素
描述: 该方法用于将参数依次添加到数组的尾部,并返回一个新数组
返回值:添加元素后的新数组
tip:该方法不修改原数组
var arr = [2, 3];
var arr2 = arr.concat(5, 6);
console.log(arr);
console.log(arr2);
var arr = ['蔡徐坤', '喜欢', ' 唱跳', 'rap', '打篮球'];
console.log(arr.concat('两年半练习生'));
console.log(arr);
数组扁平化
var arr = [1, 2, 3, 4];
// arr.push([11, 22], [33, 44]);
var arr2 = arr.concat([11, 22], [33, 44]);
console.log(arr2)
4. Array.prototype.join();
语法: arr.join();
arr.join(substring);
描述: 该方法用于将数组内所有的元素都进行toString()操作,并进行拼接
参数: substring 用于拼接字符串的连接符号
返回值: 新的字符串,包含了数组所有元素toString的结果
默认情况使用英文逗号拼接
var arr = [true, 123, 'aaa', null, {}]; // 'true' '123' 'aaa'
'[object Object]'
var str = arr.join('---------');
console.log(str);
var arr = ['蔡徐坤', '喜欢', '唱跳', 'rap', '打篮球'];
console.log(arr);
arr = arr.join("");
console.log(arr);
5. Array.prototype.reverse();
语法:arr.reverse();
描述:该方法颠倒数组中的所有元素(修改的是排列顺序)
tip: 直接修改原数组
var arr = [1, 2, 3];
arr.reverse();
console.log(arr)
var arr = ['蔡徐坤', '喜欢', '唱跳', 'rap', '打篮球'];
b = arr.reverse();
console.log(b);
6. Array.prototype.shift();
语法: arr.shift();
描述: 该方法用于删除并返回数组中的第一个元素,并将后面的元素向前移一位?????????????-1?
返回值:返回被
console.log(arr);
var arr = ['蔡徐坤', '喜欢', '唱跳', 'rap', '打篮球'];
console.log(arr.shift());
console.log(arr);
- Array.prototype.slice()
语法: arr.slice(start[,end]);
描述: slice函数用于截取数组指定索引的片段
参数: start 开始的索引
end 结束索引 如果没有end参数 则从start开始到数组结尾结束
end 允许是负数 -1表示最后1个 -2表示倒数第二个 依次类推
返回值:截取到的新数组片段(包含start到end的部分)
包括开始下标 不包括结束下标
var arr = [5423, 67, 671, 66, 134, 77, 34];
var sli = arr.slice(1, -3);
console.log(sli);
console.log(arr);
var arr = [];
console.log(arr.slice(0, 3)); //如果没有截取到内容 则返回空数组
8.Array.prototype.sort()
语法: arr.sort([callback]);
描述: 对数组内的元素按照特定的规则进行排序
参数: callback 用于排序规则的回调函数
tip: 该方法直接操作原数组
var arr = [15, 812, 5, 151, 113, 63, 12, 85, 3];
var arr2 = ['abc', 'aaac', 'ab', 'bac', 'bb'];
console.log(arr.sort());
console.log(arr2.sort());
arr.sort(function(a, b) {
// return a - b;
return b - a;
});
arr2.sort((a, b) => a - b); //简写 箭头函数
console.log(arr2);
9.Array.prototype.toString()
语法: arr.toString();
描述: 将数组内所有的元素都进行toString() 然后用,连接
返回值: 拼接好的字符串
推荐使用join()
var arr = [62, true, 111, 'aaa'];
console.log(arr.toString('-'));
10.Array.prototype.unshift();
语法: arr.unshift(value[,value2,...valueN]);
描述: 该方法用于在数组的头部插入一条或多条数据
将参数的值依次插入输入,将数组原来的值向后移动
参数: value 要插入到数组头部的值
tip: 该方法直接操作原数组
var arr = [1, 2, 3];
arr.unshift(3, 2, 1);
console.log(arr);
队列 先进先出
unshift()和shift() 都是操作数组的头部
11.Array.prototype.splice()
语法: arr.splice(start[deleteCount[,val,...]]);
描述: 可以用于删除指定索引值的数组元素
可以用于数组的元素替换
可以在指定的索引位置插入新的元素 并将之前的元素向后移动
参数: start 开始索引
deleteCount 要删除的数量 如果没有这个参数 删除到数组结尾
val 要插入到start位置的元素
返回值: 返回被删除的数组片段(Array)
tip:该方法直接操作原数组
var arr = [1, 2, 3, 4, 5, 6, 7];
var delElm = arr.splice(2, 0, 'ok', '12', 'abc');
console.log(arr);
console.log(delElm);