【js】数组方法集锦

一、判断是否是数组

1.方法1(ECMAScript 5 定义的新方法)

var arr = [1,2,3,4,5];
console.log(arr.isArray())

2.方法2(自己定义方法)

var isArray = function(x) {
    return x.constructor.toString().indexOf("Array") > -1;
}
var arr=[1,2,3,4,5];
console.log(isArray (arr));

3.方法3(利用instanceof 运算符)

var arr = [1,2,3,4,5];
console.log(arr instanceof Array );

二、数组方法

1.原数组不受影响

toString() 把数组转换为数组值(逗号分隔)的字符串。

join() 方法也可将所有数组元素结合为一个字符串。【它的行为类似 toString(),但是您还可以规定分隔符:】

concat() 方法通过合并(连接)现有数组来创建一个新数组

slice() 方法用数组的某个片段切出新数组。

valueOf()返回数组对象的原始值。

forEach() 方法为每个数组元素调用一次函数(回调函数)【所有浏览器都支持 Array.forEach(),除了 Internet Explorer 8 或更早的版本】

reduce() 方法在每个数组元素上运行函数,以生成(减少它)单个值。【所有浏览器都支持 Array.map(),除了 Internet Explorer 8 或更早的版本】

map() 方法通过对每个数组元素执行函数来创建新数组。【所有浏览器都支持 Array.map(),除了 Internet Explorer 8 或更早的版本】

filter() 方法过滤数组,返回一个新的数组。【所有浏览器都支持 Array.filter(),除了 Internet Explorer 8 或更早的版本】

every() 方法检查所有数组值是否通过测试。【所有浏览器都支持 Array.filter(),除了 Internet Explorer 8 或更早的版本】

some() 方法检查某些数组值是否通过了测试。【所有浏览器都支持 Array.filter(),除了 Internet Explorer 8 或更早的版本】

indexOf() 方法在数组中搜索元素值并返回其位置。【所有浏览器都支持 Array.filter(),除了 Internet Explorer 8 或更早的版本】

lastIndexOf()与 Array.indexOf() 类似,但是从数组结尾开始搜索 【所有浏览器都支持 Array.filter(),除了 Internet Explorer 8 或更早的版本】

find() 方法返回通过测试函数的第一个数组元素的值。(多个符合条件时只返回第一个值)【老旧的浏览器不支持 Array.find()。下面列出了完全支持此方法的首个浏览器版本】

findIndex() 方法返回通过测试函数的第一个数组元素的索引。【老旧的浏览器不支持 Array.find()。下面列出了完全支持此方法的首个浏览器版本】

 

2.原数组受影响

pop() 方法从数组中删除最后一个元素:

push() 方法(在数组结尾处)向数组添加一个新的元素

shift() 方法会删除首个数组元素

unshift() 方法(在开头)向数组添加新元素

splice() 方法可用于向数组添加删除元素

sort() 方法以字母顺序对数组进行排序

reverse() 方法反转数组中的元素。

三、数组迭代方法区别

1、forEach:遍历开始以后无法停止,如果要遍历整个数组,那就使用这个方法;

2、map:根据当前数组映射出一个新的数组;

3、some:遍历整个数组,返回值true就停止循环(返回false继续循环)

返回值:如果数组中的有一项回调函数返回true,那么结果为true,否则为false;(或者这样理解:数组别遍历完,那么结果为false,否则为true)

4、every:与some相反,返回false就停止循环(返回true就继续循环)

5、filter:过滤数组,返回一个新的数组

6、reduce:实现数据的累加

上一篇:Delphi 转载:万一博客中的“多线程”解读


下一篇:java – 使用逆向工程升级到Hibernate 3.6错误