js 数组 常用方法
let arr=[{a:1},{a:2},{a:3}];
//forEach 数组循环
// 返回void
arr.forEach(i=>{
// i为arr中的元素
})
//filter 数组过滤 如果return 的值为true 则将当前的遍历的元素添加到返回的数组中去
// 返回[]
arr.filter(i=>{
return i.a>2;
})
//map 数组循环 遍历数组,并将遍历数组中的每一个元素映射返回 注意不管是否有return值返回的数组的length不变 只是无return值的元素位置会变成undefined
arr.map(i=>{
})
//every 数组循环 判断数组内每一个元素是否都满足件 返回bool 注意 当发现一个元素不满足条件时,遍历终止 返回false
arr.every(i=>{
return i.a>=1;
})
//some 数组循环 判断数组内是否存在满足条件的元素,返回bool 注意 当发现一个元素满足条件时,遍历终止 返回true
arr.some(i=>{
return i.a>2;
})
//reduce 数组循环 将数组内所有元素相加 并返回最终值 注意 此方法第一次遍历时a为数组第一个元素 b为第二个元素,第二次及第二次以上遍历时 a为前a与b之和 b为前b的下一个元素
arr.reduce((a,b)=>{
return {a:a.a+b.a};
})
//find 数组循环 遍历数组内部所有元素,返回第一个满足条件的元素同时遍历结束,如果没有则返回undefined
arr.find(i=>i>10);
//注意!!! 以下皆为数组变异方法,会改变数组本身的状态
//push 在数组的末尾添加一个元素 返回数组长度
arr.push({a:4})
//pop 移除数组最后一个元素 返回移除的元素
arr.pop()
//unshift 在数组的首部添加一个元素 返回数组长度
arr.unshift()
// shift 移除数组的第一个元素 返回移除的元素
arr.shift()
//splice 万能方法 此方法可实现数组的增加 删除 以及改变元素位置;返回 删除的元素组成的数组若没有删除的元素则返回一个空数组 第一个执行操作的初始位置,第二个需要影响多少个元素,第三个及第三个以后表示插入多少个元素插入多少个元素;
let brr=[1,2,3,4,5,6];
let ret= brr.splice(0,5);//执行删除方法 从0号位元素开始包括第一个元素,删除五个元素,插入0个元素 返回删除的元素;
let ret2=brr.splice(0,5,5,4,3,2,1);//执行更换方法,从0号位元素开始包括第一个元素,删除五个元素,插入5,4,3,2,1元素 返回删除的元素
let ret3=brr.splice(0,0,99,99)//执行插入方法,从第0号元素开始,删除0个元素,插入99,99,返回删除的元素
//sort 数组排序 此方法可实现数组的自定义的排序 此方法每次遍历返的a的值由return,其内部有一个排序算法,感兴趣的可以自己打印了解,这里提供一个比较方便的记忆方法b-a为降序排列,a-b为升序排列,返回一个数组;
let arr2=[1,9,8,2,5,6];
let ret1=arr2.sort((a,b)=>{
return b-a;
});//注意 此方法放回的并不是一个全新的数组而是一个引用,其效果等同ret1=arr2;!!此方法也是一个变异方法
//reverse 数组反转 将数组的排列顺序反转过来 返回 反转顺序的数组的引用 其效果等同于 ret=arr !!此方法也是一个变异方法
let ret= arr.reverse();
// 以下为非变异方法
//join 使用指定的连接符拼接数组 返回一个字符串
let arr3=[1,2,3,4,5,6,4];
let str=arr3.join(',');
// console.log("str",str);//str 1,2,3,4,5,6,4 可使用join("")空字符串 返回1234564
//toString 将数组内部的元素拼接成一个字符串 不能指定拼接字符串,如有拼接需求推荐使用join
let arr4=[1,2,3,4,5,6];
str= arr4.toString();
console.log('str',str);
//concat 拼接数组 将一个数组拼接至concat后 返回两个数组拼接的新数组
let concat=[1,2,3,4,5,6,7];
let concat1=[1,2,3,4,5,6,7];
let con=concat.concat(concat1);
//slice 截取数组 返回一个截取元素组成的数组 非变异方法 接受2个参数 第一个位截取开始的位置 第二个为截取数量
let ret =arr.slice(0,5);
js 数组 常用方法的更多相关文章
- js数组常用方法汇总
判断某个对象是否是数组: instanceof.Array.isArray() 对于一个网页或者一个全局作用域可以使用instanceof操作符. if(value instanceof Array) ...
- js 数组常用方法
var arr =[0,1,2,3,4,5,6,7,8,9]; 1,shift() 删除数组的第一个元素,返回删除的值 //这里返回0 2,unshift(1,2) 把参数添加到数组的前面,返回值 ...
- js 数组常用方法说明
//push 向数组最后添加一项 var arr = ['one', 'two', 'three']; arr.push("four"); console.log(arr);//[ ...
- JS数组常用方法
// 来自 http://www.runoob.com/jsref/jsref-obj-array.html var arr01 = [ "fuc" , "shi ...
- JS数组常用方法总结
JavaScript中创建数组有两种方式 (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(20); / ...
- js数组常用方法,含es5
(1)基本的数组方法 1.join() Array.join()方法将数组中所有元素都转化为字符串并连接在一起,返回最后生成的字符串.可以自己指定分隔的符号,如果不指定,默认使用逗号 var arr ...
- js数组常用方法整理
学疏才浅,若有不对的地方,希望大家可以帮忙指正出来. 1. Array.push(),向数组的末尾添加一个或多个元素,并返回新的数组长度.原数组改变. 2. Array.pop(),删除并返回数组的最 ...
- 优化 JS 条件语句及JS 数组常用方法, ---- 看完绝对对日后开发有用
前言: 日常所说的优化优化.最后我们到底优化了哪些,不如让我们从代码质量开始:个人觉得简洁简化代码其实觉得存在感挺强烈的QAQ 1. 获取URL中 ?后的携带参数: 这是我见过最简洁的了,若有更简洁的 ...
- es6 js数组常用方法
一:会改变自身的方法 1.array.push(element1, ...elementN) 添加一个或多个元素到数组的末尾,并返回数组新的长度 2.array.unshift(element1, . ...
随机推荐
- shell 编程四剑客简介 find sed grep awk(微信公众号摘抄)
一,Shell编程四剑客之Find 通过如上基础语法的学习,读者对Shell编程有了更近一步的理解,Shell编程不再是简单命令的堆积,而是演变成了各种特殊的语句.各种语法.编程工具.各种命令的集合. ...
- 解决虚拟机克隆的linux系统ip无法正常使用问题
当我们克隆centos虚拟机无法正常获取IP地址,重启网卡也提示Bringing up interface eth0: Device eth0 does not seem to be present ...
- MVC+EF三层+抽象工厂
MVC+EF三层+抽象工厂项目搭建 注意:项目经过两次搭建,所以截图中顶级命名空间有ZHH和ZHH2区别,但是架构的内容是一样的,可以将ZHH和ZHH2视为同一命名空间 一:权限管理 二:搜索 | ...
- 【sql】牛客网练习题 (共 61 题)
[1]查找最晚入职员工的所有信息 CREATE TABLE `employees` ( `emp_no` ) NOT NULL, `birth_date` date NOT NULL, `first_ ...
- 【Luogu】【关卡2-3】排序(2017年10月) 【AK】
任务说明:将杂乱无章的数据变得有规律.有各种各样的排序算法,看情况使用. 这里有空还是把各种排序算法总结下吧.qsort需要会写.. P1177 [模板]快速排序 这个题目懒得写了,直接sort了.. ...
- MATLAB生成exe脱离matlab运行可执行程序
https://blog.csdn.net/u013007900/article/details/53485204 侵权即删. ———————————————— 版权声明:本文为CSDN博主「小木匠_ ...
- 1、cmd中检测远程的ip和端口是否处于监听状态
一.使用 ping 命令测试远程的ip是否可连通 cmd (右键 管理员角色) --- ping IP 二.使用 telnet 测试远程某一个ip的端口是否开放 1.为了安全起见,window ...
- Oracle实现主键自增的几种方式
数据库作为一个系统的核心,数据库设计的1NF就是一个表结构必须有唯一约束也就是主键,Oracle数据库本身没有自增机制,不像MySQL直接使用关键字AUTO_INCREMENT自动加一,所以需要我们去 ...
- sping+quartz定时任务的最简单实践
1,启动spring容器 Tomcat启动的时候,加载web.xml的listener和context-param,spring的listener监听到对应的contextConfigLocation ...
- kubeadm部署多master节点高可用k8s1.16.2
一.架构信息 系统版本:CentOS 7.6 内核:3.10.0‐1062.4.1.el7.x86_64 Kubernetes: v1.16.2 Dockerce: 19.03 推荐硬件配置:2核4 ...