学而不思则罔,思而不学则殆。 系统地总结一下数组和常用的方法
一、基础知识
1.数组是特殊的对象
2.如何识别数组
- arr.isArray()
- arr instanceof Array
var arr = ['a', 'b', 'c', 'd', 'e', 'f'];
// 1.Array.isArray()
console.log( Array.isArray(arr) ); //true
// 2.instanceof
console.log( arr instanceof Array ); //true
二、数组的基础方法
1.arr.toString()
把数组转换为字符串,并返回结果。
var a1=arr.toString();
console.log('arr.toString: ', a1);
2.arr.join(’’)
把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
var a2 = arr.join(';');
console.log('arr.join: ', a2);
3.数组中删除元素的方法
(1) arr.shift();
(2) arr.pop();
(3) arr.splice(start, len);
(4) delete-不好用;
// shift:删除第一个元素
arr.shift();
// console.log('arr.shift: ', arr);
// pop:删除最后一个元素
arr.pop();
// console.log('arr.pop: ', arr); //["a", "b"]
// splice:在指定位置删除指定数量的元素
arr.splice(1,2);
// console.log('arr.splice: ', arr);
// delete:会留下空洞,不好用
// delete arr[1];
// console.log('arr.-delete ', arr); //["b", empty, "d", "e"]
4.数组中添加元素的方法
(1) arr.unshift(‘1’);
(2) arr.push(‘1’);
(3) arr.splice(index, len, …);
// unshift:在数组头部添加一个新的元素
arr.unshift('1');
// console.log('arr.unshift: ', arr);
// push:在数组尾部添加一个新的元素
arr.push('d');
// console.log('arr.push: ', arr); //["a", "b", "d"]
// splice:在指定下标前添加元素
arr.splice(3, 0, 'y', 'z' )
// console.log('arr.splice 添加: ', arr);
5.数组的合并:arr.concat()
var arr1 = [1,2];
var arr2 = ['a', 'b'];
var arr3 = ['x', 'y'];
var arr4 = arr1.concat(arr2, arr3); //[1, 2, "a", "b", "x", "y"]
6.数组的截取: arr.slice(start, end)
1.从已有的数组中返回选定的元素(包含start,不包含end)
2.start如果是负数,则从数组尾部开始算起的位置
var arr5 = ['a', 'b', 'c', 'd', 'e', 'f'];
var arr6 = arr5.slice(2, 4); //["c", "d"]
var arr8 = arr5.slice(-2); // ['e', 'f']
7.toLocaleString: 有冷门知识哈
将数组转换为字符串; 可以格式化货币
1. 常规
var arr9 = ['a', 'b', 'c'];
console.log('arr.toLocaleString()', arr9.toLocaleString());
2. 格式化货币
const num = 2333333.78;
var n2 = num.toLocaleString(); //2,333,333.78
三、数组的高级方法
1.数组排序: arr.sort(sortby)
(1)常规排序:按照字符编码的顺序进行排序
var arr10 = ["Banana", "Orange", "Apple", "Mango"];
arr10.sort(); //["Apple", "Banana", "Mango", "Orange"]
(2)数字按大小排序
var arr11 = [10,5,40,25,1000,1];
arr11.sort( (n1, n2) => n1-n2); //[1, 5, 10, 25, 40, 1000]
2.颠倒数组元素的顺序:arr.reverse()
let var12 = ['a', 'b', 'c'];
var12.reverse(); //["c", "b", "a"]
参考网站:https://www.w3school.com.cn/jsref/jsref_obj_array.asp