splice删除和添加数组内容
https://blog.csdn.net/qq_45685275/article/details/123647699?spm=1001.2014.3001.5506
1.连接两个或多个数组 concat
var hege = ["Cecilie", "Lone"];
var stale = ["Emil", "Tobias", "Linus"];
var children = hege.concat(stale);
//数组1.concat(数组2,数组3)
var parents = ["Jani", "Tove"];
var brothers = ["Stale", "Kai Jim", "Borge"];
var children = ["Cecilie", "Lone"];
var family = parents.concat(brothers, children);
2.数组转字符串 join toString
var fruits = ["Banana", "Orange", "Apple", "Mango"];
//直接 数组名.join()
var con =fruits.join();
//直接 数组名.toString()
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var str = fruits.toString();
3.删除数组的最后一个元素 pop
var fruits = ["Banana", "Orange", "Apple", "Mango"];
//数组名.pop()
fruits.pop();
4.数组的末尾添加新的元素 push
var fruits = ["Banana", "Orange", "Apple", "Mango"];
//数组名.push('要添加的内容')
fruits.push("Kiwi")
5.将数组反转排序 reverse
var fruits = ["Banana", "Orange", "Apple", "Mango"];
//数组名.reverse()
fruits.reverse();
6.删除数组的第一个元素 shift 添加第一个元素unshift
var fruits = ["Banana", "Orange", "Apple", "Mango"];
// 数组名.shift()
var delell = fruits.shift();
7.从一个数组中选择元素 (截取元素) slice
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
//数组名.slice(开始截取的索引号,结束的索引号) 结束的那个索引号是去不到的
//例如:
var citrus = fruits.slice(0,2); 取到的事索引为 0,1的这两个元素
8.数组排序 sort
//按字母升序排列数组
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort();
//按数字升序排列
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return a-b});
//按数字降序排列
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return b-a});
9.数组的遍历方法
1.foEach()
定义和用法
forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。
var arr = [1,3,5,7,9]
arr.forEach(function(value,index,arr){
console.log(value);
})
注意: forEach() 对于空数组是不会执行回调函数的。
2.map()
map()方法定义在JavaScript的Array中,它返回一个新的数组,数组中的元素为原始数组调用函数处理后的值。
注意:
1.map()不会对空数组进行检测
2.map()不会改变原始数组
// 合并数组对象
let array1 = ['周一','周二','周三','周四','周五','周六','周日']
let array2 = ['上班','上班','出差','出差','团建','休息','约会']
// 将两个数组合并成一个数组并返回
let data = array1.map((item,index) => {
return {
name:item,
value:array2[index]
}
})
console.log('这是合并的数组对象data',data)
3.filter()
var arr = [1,3,5,7,9]
// filter()方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素
// 主要用于筛选元素,注意他返回的是一个新的数组
var Arr = arr.filter(function(value,index){
return value >=3
})
console.log(Arr)//[3,5,7,9]
some()
some()方法用于检测数组中的元素是否满足指定条件,通俗的将就是查找数组中是否有满足条件的元素。
注意他返回的是布尔值,如果查找到这个元素,就返回ture,如果查不到就返回false。
如果找到第一个满足条件的元素,则终止循环,不再继续查找。
var arr = [1,3,5,7,9]
var con = arr.some(function(value,index){
return value >3
})
console.log(con)//true
every()
标准回答 map 和 forEach 的区别:
map有返回值,可以开辟新空间,return出来一个length和原数组一致的数组,即便数组元素是undefined或者是null。
forEach默认无返回值,返回结果为undefined,可以通过在函数体内部使用索引修改数组元素。
加分回答
map的处理速度比forEach快,而且返回一个新的数组,方便链式调用其他数组新方法,
创建数组有两种方式
1.利用数组字面量
var arr = [1,2,3];
2.利用new Array()
var arr1 = new Array();
//创建了一个空数组
var arr2 = new Array(2);
//2表示数组长度为2,里面有2个空的数组元素
var arr3 = new Array(3,4);
//等价于[3,4] 这样写表示有2个数组元素,为3和4