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数组的方法总结相关推荐

  1. ES5和ES6数组遍历方法详解

    ES5和ES6数组遍历方法详解 在ES5中常用的10种数组遍历方法: 1.原始的for循环语句 2.Array.prototype.forEach数组对象内置方法 3.Array.prototype. ...

  2. JS的ES5和ES6新增的方法(重点)

    ES5 EcmaScript5 严格模式和高阶函数 严格模式 1.全局严格 函数外的是全局 2.局部严格 函数内部的是局部 使用严格模式 "use strict" 必须放在代码的第 ...

  3. es6数组初始化_ES6 迭代器(Iterator)和 for...of循环使用方法

    一.什么是迭代器? 生成器 概念在Java,Python等语言中都是具备的,ES6也添加到了JavaScript中.Iterator可以使我们 不需要初始化集合,以及索引的变量 ,而是使用迭代器对象的 ...

  4. es6 的数组的方法

    es6 数组的拓展 数组的类 Array 数组的定义: 1. var arr=[]; 2. var arr=new Array(3) // 3 代表有三个元素 arr[0]=12; arr[1]=24 ...

  5. es6 去掉空格_es6 filter() 数组过滤方法总结

    Array.every(x=>x)是每一个都要满足 Array.some(x=>x)是有一个满足. Array.find(findIndex),返回符合条件的第一个值. Array.fil ...

  6. es6 filter() 数组过滤方法总结

    Array.every(x=>x)是每一个都要满足 Array.some(x=>x)是有一个满足. Array.find(findIndex),返回符合条件的第一个值. Array.fil ...

  7. 【ES6】es6数组中对象去重,数组对象去重方法总结---filter()与reduce()实践

    es6数组中对象去重 方法一: filter()与findIndex()给数组去重 1. filter()用法 2. findIndex()用法 3. 去重实战 方法二:reduce()去重 1. r ...

  8. ES6数组方法find()、findIndex()的总结

    本文主要讲解ES6数组方法find()与findIndex(),关于JS的更多数组方法,可参考以下: ①JavaScript 内置对象之-Array ②ES5新增数组方法(例:map().indexO ...

  9. es5的data语法_ES5与ES6数组方法总结

    Array 对象属性 constructor 返回对创建此对象的数组函数的引用. length 设置或返回数组中元素的数目. prototype 使您有能力向对象添加属性和方法. 传统Array 对象 ...

  10. findindex遍历 js_详解ES6数组方法find()、findIndex()的总结

    本文主要讲解ES6数组方法find()与findIndex(),关于JS的更多数组方法,可参考以下: 1. find() 该方法主要应用于查找第一个符合条件的数组元素,即返回通过测试(函数内判断)的数 ...

最新文章

  1. GitLab 配置邮箱
  2. Spring Bean 中的线程安全
  3. 如何让普通进程获得 root 的洪荒之力?
  4. 什么是Java内存模型中的happens-before
  5. java static method_java static关键字静态方法详解,静态方法实例分享
  6. Linux 下实现普通用户只能写入某个目录
  7. 分布式系统部署、监控与进程管理的几重境界
  8. 网格变形动画MeshTransform
  9. 使用MSIL 汇编程序 (Ilasm.exe) 2 强签名
  10. 微软开源项目 NeuronBlocks:像搭积木一样构建 NLP 深度学习模型!
  11. 万字长文入门 Redis 命令、事务、锁、订阅、性能测试
  12. 77GHz毫米波雷达快速chirp信号技术(二):测速原理
  13. HTTP状态码大全(常见 HTTP Status Code 含义查询)
  14. sql 语句,主键外键详解
  15. 【数据结构】(六)树与二叉树
  16. SpringMvc入门学习(IDEA创建SpringMVC项目)
  17. 整理《我三年开发经验,从字节跳动抖音组离职后,一口气拿到15家公司Offer》
  18. 2015年薪酬大涨的15个IT岗位
  19. 原码一位乘法(2020-03-27)
  20. 如何处理json数据

热门文章

  1. ht for web(图扑)加载模型
  2. 七月算法-P2 概率论与数理统计(1)
  3. 计算机应用宣传传统文化,计算机应用工程系创建优秀传统文化特色班级侧记
  4. 在直流电源(Vcc)和地之间并接电容的作用
  5. 什么是ISP(网络业务提供商)?
  6. linux系统硬盘坏道,Linux下两种修复硬盘坏道方法
  7. linux如何查看路由器ip地址,如何查找路由器IP地址?
  8. kafka no record information is available
  9. 生物信息学在线服务器,48个实用的生信在线工具强烈推荐,不看是你的损失!...
  10. python 谷歌翻译接口_使用python调用谷歌翻译接口实现英文到中文的翻译