ES3~ES6数组的方法总结
ES3数组的方法
push()
- arr.push(值) 向数组的最后一个位置添加一个元素
- 语法:arr.push()
- 返回值:改变之后的数组的长度
- 改变原数组
var arr = ["aa","bb","cc"]var res = arr.push('dd')console.log(res); //返回4
pop()
- arr.pop(值) 删除数组的最后一个元素
- 语法:arr.pop()
- 返回值:一字符串的形式返回被删掉的那个元素
- 改变元素组
var arr = ["aa","bb","cc"]
var res = arr.pop()console.log(res); //返回cc
unshift()
- arr.unshift(值) 在数组的最前面添加一个元素
- 返回值,改变之后数组的长度
- 改变原数组
var arr = ["aa","bb","cc"] var res = arr.unshift('dd')console.log(arr);//返回 ["dd", "aa", "bb", "cc"]console.log(res);//返回4
shift()
- arr.shift(值) 删除数组中年的第一个元素
- 返回值:一字符串的形式返回被删掉的第一个元素
- 改变元素组
var arr = ["aa","bb","cc"] var res = arr.shift()console.log(arr);//返回 ["bb","cc"] console.log(res);//返回aa
splice()
- arr.splice(index,num) 从指定位置开始 删除数组的元素
- index: 指定的索引
- num: 删除的个数
- arr.splice(index,num,value)
- value: 用来替换被删除的元素
- 返回值:以数组的形式返回被删除的元素
- 改变原数组
删除
var arr = ["aa","bb","cc"] var res = arr.splice(1,1,'fff')console.log(arr);//返回 ["aa", "fff", "cc"]console.log(res);//返回["bb"]
添加
var arr = ["aa","bb","cc"] var res = arr.splice(1,0,'fff')console.log(arr);//返回["aa", "fff", "bb", "cc"]
reverse()
- 反转数组
- 返回值:跟原数组一样
- 改变原数组
var arr = ["aa","bb","cc"] var res = arr.reverse()console.log(res);//返回 ["cc", "bb", "aa"]
conact()
- 合并数组
- 语法:arr.concat(arr1)
- 返回值:合并后的数组
- 不改变数组
var arr = ["aa","bb","cc"] var arr1 = ["111","222"]var res = arr.concat(arr1)console.log(res);//返回["aa", "bb", "cc", "111", "222"]
sort()
- 排序
- 原理:利用递归和冒泡排序的方法进行
- 如果sort方法没有参数,那么会按照ASCII 值进行排序,不会按照数值的大小排序
- 还有一个返回值: a-b 得到是从小到大排序 或者 b-a 得到的适合于从大到小排序
var arr = [23,54,1,6,9,10,77]arr.sort(function(a,b){return a - b})console.log(arr);//返回 [1, 6, 9, 10, 23, 54, 77]
join()
- arr.join(‘拼接符’)
- 把数组转化为字符串,默认用逗号拼接
- 返回值:拼接好的字符串
- 不改变原数组
var arr = [23,54,1,6,9,10,77]var res = arr.join('&')console.log(res);//返回23&54&1&6&9&10&77
indexOf()
- 判断数组中是否存在某个元素
- 返回值:如果元素存在就返回所在的索引位置,如果不存在返回-1
- 判断:某个元素是否在数组中存在,那就判断 indexOf(值) !== -1 为true就说明存在这个元素
var arr = [23,54,1,6,9,10,77]var res = arr.indexOf(99)console.log(arr); //返回[23, 54, 1, 6, 9, 10, 77] console.log(res);//返回-1 说明不存在
ES5数组的方法
map 映射数组
arr.map(function(items,index,arr){
return 你的操作
})
- items:原始数组的每一个元素
- index:每一个元素的索引
- arr:原始数组
- 执行次数:原始数组的长度
- 返回值:一个被你操作之后的新数组(跟原数组的长度一样)
forEach() 遍历数组
arr.forEach(function(items,indx,arr){
})
- 没有返回值
- 不能随时终止或者跳过循环
- 不需要知道循环的次数
filter() 过滤
are.filter(function(items,index,arr){
return 你的条件
})
- 返回值:根据你的条件过滤出的数组组成的数组
some()
arr.some(function(){
return 你的条件
})
- 返回值:布尔值(true 或者 false)
- 如果数组有其中一个元素满足条件就返回true
- 所有条件都不满足返回false
every()
arr.every(function(){
return 你的条件
})
- 返回值:布尔值(true 或者 false)
- 当数组中所有元素都满足条件的时候才会返回true
- 如果有其中一个不满足条件就返回false
ES6数组的方法
includes(元素)
- 检查数组中是否存在指定的元素,存在就返回true,不存在就返回false
var arr = [23,54,1,6,9,10,77]console.log(arr.includes(23));//返回trueconsole.log(arr.includes(100));//返回false
Array.from(伪数组)
- 把伪数组转换成数组
let fun = function(){var arr = Array.from(arguments)console.log(arr);//输出(5) [1, 2, 3, 4, 5]}fun(1,2,3,4,5)
Array.of(参数1,参数2,参数3)
- 根据参数列表来创建新的数组(消除new Array来创建数组的歧义问题)
let arr1 = Array.of('a','b')console.log(arr1);//返回(2) ["a", "b"]
find(callBack)
- 从指定的数组中查找第一个满足条件的元素,如果找到了那么直接返回该元素,如果没有找到就返回undefined
let arr = ['你好','世界',11,22,33,44]var res = arr.find(function(item,index,arr){return (typeof item) == Number})console.log(res);//返回undefined//因为typeof返回的是字符串,在这里是number
let arr = ['你好','世界',11,22,33,44]var res = arr.find(function(item,index,arr){//typeof 数据,判断数据的类型,但是返回的是一个字符串return (typeof item) == 'number'})console.log(res);//返回11
findIndex(callBack)
- 从指定的数组中查找第一个满足条件的元素,如果找到就直接返回该元素的索引,如果没有找到就返回-1
ES6新特性之Set去重
- Set基本使用
- 创建Set集合 new Set();
- Set中的方法
- add() 添加数据
- clear() 清空集合
- has() 检测集合中是否存在特定的数据
- forEach() 遍历
- delete() 删除成员
set集合案例使用(主要用于数组去重)
let arr = [11,11,22,44,33,45,6,4,76,22,13,45,6]let s2 = new Set(arr)console.log(s2);
ES3~ES6数组的方法总结相关推荐
- ES5和ES6数组遍历方法详解
ES5和ES6数组遍历方法详解 在ES5中常用的10种数组遍历方法: 1.原始的for循环语句 2.Array.prototype.forEach数组对象内置方法 3.Array.prototype. ...
- JS的ES5和ES6新增的方法(重点)
ES5 EcmaScript5 严格模式和高阶函数 严格模式 1.全局严格 函数外的是全局 2.局部严格 函数内部的是局部 使用严格模式 "use strict" 必须放在代码的第 ...
- es6数组初始化_ES6 迭代器(Iterator)和 for...of循环使用方法
一.什么是迭代器? 生成器 概念在Java,Python等语言中都是具备的,ES6也添加到了JavaScript中.Iterator可以使我们 不需要初始化集合,以及索引的变量 ,而是使用迭代器对象的 ...
- es6 的数组的方法
es6 数组的拓展 数组的类 Array 数组的定义: 1. var arr=[]; 2. var arr=new Array(3) // 3 代表有三个元素 arr[0]=12; arr[1]=24 ...
- es6 去掉空格_es6 filter() 数组过滤方法总结
Array.every(x=>x)是每一个都要满足 Array.some(x=>x)是有一个满足. Array.find(findIndex),返回符合条件的第一个值. Array.fil ...
- es6 filter() 数组过滤方法总结
Array.every(x=>x)是每一个都要满足 Array.some(x=>x)是有一个满足. Array.find(findIndex),返回符合条件的第一个值. Array.fil ...
- 【ES6】es6数组中对象去重,数组对象去重方法总结---filter()与reduce()实践
es6数组中对象去重 方法一: filter()与findIndex()给数组去重 1. filter()用法 2. findIndex()用法 3. 去重实战 方法二:reduce()去重 1. r ...
- ES6数组方法find()、findIndex()的总结
本文主要讲解ES6数组方法find()与findIndex(),关于JS的更多数组方法,可参考以下: ①JavaScript 内置对象之-Array ②ES5新增数组方法(例:map().indexO ...
- es5的data语法_ES5与ES6数组方法总结
Array 对象属性 constructor 返回对创建此对象的数组函数的引用. length 设置或返回数组中元素的数目. prototype 使您有能力向对象添加属性和方法. 传统Array 对象 ...
- findindex遍历 js_详解ES6数组方法find()、findIndex()的总结
本文主要讲解ES6数组方法find()与findIndex(),关于JS的更多数组方法,可参考以下: 1. find() 该方法主要应用于查找第一个符合条件的数组元素,即返回通过测试(函数内判断)的数 ...
最新文章
- GitLab 配置邮箱
- Spring Bean 中的线程安全
- 如何让普通进程获得 root 的洪荒之力?
- 什么是Java内存模型中的happens-before
- java static method_java static关键字静态方法详解,静态方法实例分享
- Linux 下实现普通用户只能写入某个目录
- 分布式系统部署、监控与进程管理的几重境界
- 网格变形动画MeshTransform
- 使用MSIL 汇编程序 (Ilasm.exe) 2 强签名
- 微软开源项目 NeuronBlocks:像搭积木一样构建 NLP 深度学习模型!
- 万字长文入门 Redis 命令、事务、锁、订阅、性能测试
- 77GHz毫米波雷达快速chirp信号技术(二):测速原理
- HTTP状态码大全(常见 HTTP Status Code 含义查询)
- sql 语句,主键外键详解
- 【数据结构】(六)树与二叉树
- SpringMvc入门学习(IDEA创建SpringMVC项目)
- 整理《我三年开发经验,从字节跳动抖音组离职后,一口气拿到15家公司Offer》
- 2015年薪酬大涨的15个IT岗位
- 原码一位乘法(2020-03-27)
- 如何处理json数据
热门文章
- ht for web(图扑)加载模型
- 七月算法-P2 概率论与数理统计(1)
- 计算机应用宣传传统文化,计算机应用工程系创建优秀传统文化特色班级侧记
- 在直流电源(Vcc)和地之间并接电容的作用
- 什么是ISP(网络业务提供商)?
- linux系统硬盘坏道,Linux下两种修复硬盘坏道方法
- linux如何查看路由器ip地址,如何查找路由器IP地址?
- kafka no record information is available
- 生物信息学在线服务器,48个实用的生信在线工具强烈推荐,不看是你的损失!...
- python 谷歌翻译接口_使用python调用谷歌翻译接口实现英文到中文的翻译