当前位置: 首页>后端>正文

presto array 查询 js array查询

一、鉴别数组

typeof Array :Object (不可取)
array instanof(Array) :true (可取)
Array.isArray(arr)检测是否为数组

二、转换方法

array.toString()返回字符串
String(array);
array.join(str);通过str连接
array.valueOf() 返回数组本身
字符串转数组:str.split(","),Array.from(str,fun) fun为一个函数,迭代对数组成员操作
简洁方法:扩展运算法

三、栈方法

pop()从尾部删除最后一个数据,并返回该值
push()在尾部加入新值,并返回加入后的数组长度

四、队列方法

push()+
shift()从头部删除一个数据并返回该数据
unshift()从头部加入多个数据并返回新的数组长度

五、重排序方法

reverse()将数组反序
sort()无参情况将数组按照toString返回的字符串进行排序
sort(sortby)可以传入一个函数,这个函数有两个参数,表示排序依据
如:

function(a,b)
 {
 return a-b;//升序
 }
 function(a,b)
 {
 return b-a;//降序
 }

六、位置方法

indexOf(a)返回a元素从前往后的第一个索引值
lastIndexOf(a)返回a元素从后往前的第一个索引值
注:判断是通过全等===运算符

七、迭代方法

1、

every(function(item,index,array)
 {
 doSomething;
 })


如果每一项都返回true则结果返回true,如果中途有返回false则停止迭代,直接返回false;
2、

some(function(item,index,array)
 {
 doSomething;
 })


如果有一项返回true则结果返回true,遇到第一个返回true的值就停止迭代,返回true,如果迭代完没有一项返回true,则返回false
3、

filter(function(item,index,array)
 {
 doSomething;
 })


返回迭代中返回true的项组成新的数组
4、

map(function(item,index,array)
 {
 doSomething;
 })


返回迭代中返回值组成的数组
5、

forEach(function(item,index,array)
 {
 doSomething;
 })


无返回值,迭代整个数组

八、归并方法

1、

reduce(function(pre,cur,index,array)
 {
 dosomething;
 })


参数为前一项,当前项,索引和数组本身。
2、

reduceRight(function(pre,cur,index,array)
 {
 dosomething;
 })


和上相同,只是从后往前迭代。

九、截取方法

arr.slice(start,end)
arr.splice(start,num,adds)从数组中取出,会影响原数组,将start->start+num中的替换为adds的值,当第二个参数为0时还可以增加。

十、清空数组的方法

1、arr=[]; 这种方式当数组被其他变量引用时,不会改变其他数组。
2、arr.length=0;
3、arr.splice(0,arr.length)
4、while(arr.pop()){};

十一、合并数组

1、arr.concat(arr1,arr2…)
2、[…arr1,…arr2]

十二、查找

arr.indexOf();从左侧查找成功返回第一个位置,不成功返回-1;
arr.lastIndexOf();从右侧开始查找
arr.includes();返回是否有
arr.find(function(item{}));find返回第一个返回true的项的值;
arr.findIndexfunction(item{})();返回第一个返回true的项的索引;



https://www.xamrdz.com/backend/3uq1934798.html

相关文章: