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, . ...
随机推荐
- C#5.0 异步编程 Async和Await--介绍
C#5.0引入async和await关键字实现方法的异步调用. 直接进入正题. async只是一个标识符,并没有实际的用途,只是用于表明某个方法是异步方法,在方法前面加上async 表示该方法为一个异 ...
- AE开发中实现Control中的各种图形工具的方法(转)
Controls中的工具基本可以分为两类: 第一类:点击工具图标或按钮后,当前axMapControl的工具即为所点击的工具命令. 前面有Controls 后面有tool的工具都可以用同一类的代码实现 ...
- 在Eclipse上安装Spring Tool Suite
. 不装IDE会没有Spring bean configure file Spring Tool Suite是一个基于Eclipse IDE开发环境中的用于开发Spring应用程序的工具,提供了开箱即 ...
- 一个比较独特的"HelloWorld"
为什么说是特殊的helloworld呢给全世界的服务器发送一个请求,这就是我"打招呼"的方式核心内容就是:向所有的ipv4地址发送一个请求即x.x.x.x,如果其是web服务,就拿 ...
- HTML5 原生API input file 来实现多图上传,并大图预览
闲来无事,突然想用原生来实现图片的多图上传. 一.效果图大致如下: 1.上传时可以选择多图 2.上传之后缩略图下过图如下: 3.点击缩略图,大图展示当前所点击的图片,并可以左右滑动查看其它的缩略图对应 ...
- leetcode-160周赛-5239-循环码排列
题目描述: 参考格雷编码: class Solution: def circularPermutation(self, n: int, start: int) -> List[int]: res ...
- apue 第18章 终端I/O
终端I/O有两种不同的工作模式: (1)规范模式:输入以行单位进行处理,每个读请求也最多返回一行. (2)非规范模式:输入字符不装配成行. 终端设备是由通常位于内核中的终端驱动程序控制的.每个终端设备 ...
- 解决SQLite中的 database is locked
前些时候,同事在站点服务端使用SQlite存储一些临时数据,但是在多人并发的时候Sqlite会抛出异常:The database file is locked , database is locked ...
- go语言中使用正则表达式
一.代码 package main import ( "fmt" "regexp" ) func main() { text := `Hello 世界!123 ...
- SQL中忘记用户登陆密码该如何修改
1.每个数据库登陆之前都必须先启动它本身的数据服务,SQL数据库也不例外,首先我们要做的是先打开我们的SQL数据服务! 2.随后在我们的开始菜单中找到我们的SQL启动图标,打开即可 3.弹出登录窗体( ...