Array数组相关方法

时间: 2019-03-18阅读: 828标签: array

1.push向数组末尾添加元素

参数:不确定个数,而且类型也不确定,要添加的新元素
返回:新增加后的数组
原有数组改变
例如:

var arr = ["Banana", "Orange", "Apple"];
arr.push("Pear");
console.log(arr)

结果:["Banana", "Orange", "Apple" , "Pear"]


2.unshift向数组开头增加元素

参数:不确定个数,而且类型也不确定,要添加的新元素
返回:新增加后的数组
原有数组改变
例如:

var arr = ["Banana", "Orange", "Apple"];
arr.unshift("Pear");
console.log(arr)

结果:["Pear","Banana", "Orange", "Apple"]


3.pop删除数组末尾一项

参数:
返回:删除数组的个数
原有数组改变
例如:

var arr = ["Banana", "Orange", "Apple"];
arr.pop();
console.log(arr)

结果:["Banana", "Orange"]


4.shift删除数组的第一项

参数:
返回:删除的元素
原有数组改变
例如:

var arr = ["Banana", "Orange", "Apple"];
arr.shift();
console.log(arr)

结果:["Orange", "Apple"]


5.join为数组添加指定的分隔符

参数:可以有,可以是一个分隔符,不写默认是(",")
返回分开后的字符串
原有数组不变
例如:

var arr = ["Banana", "Orange", "Apple"];
console.log(arr.join(","))

结果:Banana,Orange,Apple


6.toString

相当于join()或join(",")
例如:
var arr = ["Banana", "Orange", "Apple"];
console.log(arr.toString())
结果:Banana,Orange,Apple


7.slice找某一区域内的项,返回成新数组形式

slice(n,m)从索引n开始截取到索引为m,但不包含m;m不写的话默认截取到最后;n和m都不写,默认是复制一份一模一样的数组
将找到的新数组返回
原有数组不会改变
例如:
var arr = ["Banana", "Orange", "Apple","Pear","watermelon"];
console.log(arr.slice(1,3));
结果:["Orange", "Apple"]


8.concat()将2个数组链接起来

concat()克隆一份新的数组(原有数组不变)等价于slice()或者slice(0)
原有数组不改变
例如:
var arr1 = ["Banana", "Orange"]
var arr2 = ["Apple","Pear","watermelon"]
console.log(arr1.concat(arr2));
结果:["Banana", "Orange", "Apple", "Pear", "watermelon"]


9.splice(n,m) 从索引n开始删除m个元素

splice(n,m,x) 从索引n开始删除m个元素,返回删除的元素(数组),并且将删除的区域用x代替--->数组的修改替换
如果 m是0的话,相当于没有删除,也就是在数组中的指定区域添加新的元素
返回:删除的项当成新的数组返回
原有数组是改变的
例如:
var arr = ["Banana", "Orange","Apple","Pear","watermelon"]
console.log(arr.splice(2,1,"grape"))
结果: ["Banana", "Orange", "grape", "Pear", "watermelon"]
console.log(arr);//打印出删除的元素
结果:["Apple"]


10.reverse 将数组倒过来排列

原有数组改变
例如:
var arr = ["Banana", "Orange","Apple"]
console.log(arr.reverse());
结果:["Apple", "Orange", "Banana"]


11.sort数组排序,只能处理10以内的

原有数组改变
排序后:[1, 5, 10, 25, 40, 100]
例如:
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return a-b});
console.log(points)


12.forEach() 遍历

let arr = [1,2,5];
arr.forEach(function(item,index){
console.log(item);
})// 1 2 5


13.map() 映射:经常用于数据绑定

let arr = [1,3,6];
console.log(arr.map(item => item*2));//[2,6,12]


14.filter 过滤;

如果回调函数返回true,则将次成员过滤出来,放到返回值中;如果为false,不需要放进返回值中
let arr = [100,55,67,88,99,10];
let res = arr.filter(item => item>60);
console.log(res);//[100, 67, 88, 99]


15.find()

查找满足条件第一项值,如果找到这个值直接终止find函数,如果找不到满足条件的项,则返回undefined[找true]
let arr = [100,55,66,30,40,25];
let res = arr.find(item => item>99);
console.log(res);//100
let res1 = arr.find(item => item>200);
console.log(res1);//undefined


16.every

返回值boolean,当回调函数都返回true,则every这个方法返回true;如果有一个是false,那么整体结果就是false,只要返回false,every就不需要在循环向下执行了【找false】
let arr = [1,2,3,4,5];
let res = arr.every(item => item>5);
console.log(res);//false


17.some:

返回一个布尔值 只要回调函数有一个返回true,那么some返回值就是true,当所有的都不满足条件,结果返回false;
let arr = [50,30,55,70]
let a = arr.some(item => item>50);
console.log(a);//true


18.includes:

包含 检测数组是否包含某一项:如果包含返回true,不包含返回false
let arr = [1, 2, 3, 4, 56, 7];
console.log(arr.includes(2));//true


19.reduce

收敛,求和 prev:代表除第一次循环外,代表上一次回调函数的返回值;第一次prev代表第一项;
let arr = [1, 2, 3, 4, 5];

arr.reduce((prev, next) => {
    console.log(prev + next);
    return prev + next;
});//15

let arr = [{price: 2, count: 10, name: "面筋"}, {price: 1, count: 5, name: "烤肠"}, {
    price: 3, count: 8, name: "鸡翅"}, {price: 3, count: 6, name: "啤酒"}];

arr.reduce((prev,next)=>{
    return prev + next.price * next.count;
},0)//67
站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/2418

关闭

es6之Array.from()方法

Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组。==只要是部署了Iterator接口==的数据结构,Array.from都能将其转为数组。

js判断数组是否包含某个元素

js判断JS 判断某变量是否为某数组中的一个值的4种方法(总结),分享给大家。indexOf()、正则表达式、arr.find() 、for循环结合if判断

es6中 Array.from()函数的用法

ES6为Array增加了from函数用来将其他对象转换成数组,Array.from可以接受三个参数,我们看定义:Array.from(arrayLike [, mapFn [, thisArg]])。arrayLike:被转换的的对象。 mapFn:map函数。 thisArg:map函数中this指向的对象。

Js Array对象常用方法

不改变原数组:concat();join();slice();toString(),改变原数组:pop();push();reverse();shift();unshift();sort();splice(),array.concat(array)连接两个或多个数组,返回被连接数组的一个副本

JS实现遍历不规则多维数组的方法

这篇文章主要介绍了JS实现遍历不规则多维数组的方法,涉及javascript数组递归遍历相关实现与使用技巧,需要的朋友可以参考下

js数组的迭代

js数组的迭代:forEach() 方法对数组的每个元素执行一次提供的函数。map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。

js中reduce的用法,如何使用reduce函数

reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组

es6之Array.of()和Array.from()

es6新增了二种方法:Array.of()和Array.from(),它们有什么用途呢?在平时的开发中能给我们带来什么方便呢?本篇将从一个创建数组的小问题开始,逐步揭开它们的面纱。

js 数组方法,包含ES6方法

JavaScript常用数组操作方法:concat() 方法用于连接两个或多个数组。join() 方法用于把数组中的所有元素放入一个字符串。push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。pop() 方法用于删除并返回数组的最后一个元素。

Array.prototype.slice.call()

MDN中对于Array.prototype.slice.()的介绍中,提到了类数组对象。以下是原文:slice 方法可以用来将一个类数组(Array-like)对象/集合转换成一个新数组。你只需将该方法绑定到这个对象上。 一个函数中的 arguments 就是一个类数组对象的例子。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!