JS数组的常用方法
首先给大家介绍一下什么是数组,数组,是可以存储着一些任意类型或者相同类型数据的集合,简单来说就是一组数据的集合。
如:[1, 2, 3, ‘hello’, true, false]
数组的创建:
var arr =new Array();
var arr =[];
或者
var arr =new Array(‘李易峰’,‘宝宝’,‘666’,true);
var arr =[‘李易峰’,‘宝宝’,666,true];
在js中数组由"下标“,”值“,”长度”组成。
当要使用数组中的某个数值时直接用 数组名 + [下标] 就可以了
还有一个专门用于数组的循环for … in循环
//如:
var arr=['子鼠','丑牛','寅虎','卯兔'];
for(var i in arr){
console.log(arr[i]);
}
这种方法针对数组使用时非常方便
可用于遍历数组、遍历对象
数组的常用方法:
- push() 可以接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。
var arr=['你','好','啊','朋友'];
arr.push('.');
//加上var x=arr.push()可返回数组的长度
- pop() 从数组末尾移除最后一项,减少数组的length值,然后返回移除的项。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var x = fruits.pop();
//x的值为pop()执行后数组删的值
//也可以不加x直接删除值不返回
- unshift()方法能够在数组前面添加任意个项并返回新数组的长度。
var arr=['你','好','啊','朋友'];
fruits.unshift(".");
//效果如同push不过元素会加在最前方也可返回长度
- shift() 方法能够移除数组中的第一个项并返回该项,同时将数组长度减 1。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.shift();
//可加返回值返回删除的元素
- reverse() 方法会反转数组项的顺序。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.reverse();
//把里面的值反转排序
- sort() 方法按字母表升序排列数组项。
var arr = [65, 156, 15, 166, 13, 5];
var tempNum;
// arr[i] arr[i+1] 相邻的索引对应的值进行比较大小
// 将较大的数放到后面(交换两个数字的位置)
//一般的方法
for (var j = 0; j < arr.length - 1; j++) {
// 用于进行单轮的排序
for (var i = 0; i < arr.length - j - 1; i++) { // 此循环用于遍历数组
if (arr[i] > arr[i + 1]) { // 如果第一个数大于第二个数 交换位置
tempNum = arr[i]; // 将较大的数给到临时变量
arr[i] = arr[i + 1]; // arr[i+1]是较小的数字 给到前面一个位置
arr[i + 1] = tempNum;
}
}
console.log(arr);
}
console.log(arr.sort(function(a, b) {
// a-b 升序
// b-a 降序
return a - b;
}));
- concat() 方法可以基于当前数组中的所有项创建一个新数组,参数可以是数组项或者数组。
var myGirls = ["你", "好"];
var myBoys = ["啊", "朋", "友"];
var myChildren = myGirls.concat(myBoys);
//myChildren=["你", "好","啊", "朋", "友"]
//也可以更多的数组只要在小括号内,数组名即可
//亦可直接写数组
var myChildren = arr1.concat(["Emil", "Tobias", "Linus"]);
- slice() 方法它能够基于当前数组中的一或多个项创建一个新数组。可以接受一或两个参数。
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(0);//切出全部元素
citrus = fruits.slice(1, 3);//从1切到3不包括3
- splice() 方法,对数组进行删除、插入、替换,是最强大的数组方法,返回值是数组,改变原数组。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2, 0, "Lemon", "Kiwi");
//1.下标,在那个位置添加or删除 2.定义删减多少个元素0为不删减
//3.为添加或删减的新元素 4.为添加或删减的新元素 5.......
- join()方法,将数组转换成对应的字符串。参数就是连接符。
var arr=['你','好','啊','朋友'];
arr.join('.');
//你.好.呀.朋友
arr.join('');
//你好呀朋友