1Array.map()方法

此方法原数组不会改变,会返回一个新数组。必须有返回值;

语法

array

回调函数是必穿的参数,thisValue是可选参数!对象作为该执行回调同时使用,传递给函数用作this的值!如果省略thisValue,或者传入null,undefined,那么回调函数的this为全局对象!

回调函数里的参数currentValue:必选参数!当前元素的值!

index :可选当前元素的索引值!

arr:可选。当前所属的数组对象!

技术细节:

返回值:返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值

var 

注意:思考上面的代码:使用map方法会产生一个新的数组,数组的每一项都是我们return出来的值!所以map方法必须有返回值!如果没有return,那么新数组的每一项都是undefined!数组中元素的个数和原数组是一样的!

例子2:对象里嵌套对象对象的键值也是对象!取对象的键值组成数组对象!

const 

例子3:重组数组key,value的形式!

const 

2Array.forEach()的用法!

forEach()方法用于调用数组的每个元素!并将元素传递给回调函数!没有返回值直接改变原数组!

注意:forEach对于空数组是不会执行回调函数的!

语法:

array

回调函数:回调函数是必传的参数:

thisValue:可选参数,传递给函数的值一般用this的值!如果这个参数为空undefined会传递给this值!

回调函数的的三个参数:

回调函数里的参数currentValue:必选参数!当前元素的值!

index :可选当前元素的索引值!

arr:可选。当前所属的数组对象!

技术细节:返回值nudefined

例子1让数组的每一项都有相同的运算:

var arr = [1, 2, 3, 4, 5, 6]var arr2 = arr.forEach(function (item, index) {arr[index] = item + 1})console.log(arr2) // undefinedconsole.log(arr) //  [2, 3, 4, 5, 6, 7]

产生上面结果的原因是:forEach方法没有返回值 直接改变元数组:

例子2:用forEach方法累积求和

arr

例子3 跳出forEach循环不能用continue或break 可以用if或return

arr 

例子4根据数组的某一项进行分类;

const 

3 Array.filter()的用法过滤

语法:

array

回调函数:回调函数是必传的参数:

thisValue:可选参数,传递给函数的值一般用this的值!如果这个参数为空undefined会传递给this值!

回调函数的的三个参数:

回调函数里的参数currentValue:必选参数!当前元素的值!

index :可选当前元素的索引值!

arr:可选。当前所属的数组对象!

技术细节:返回值,返回数组,包含所有满足条件的元素!如果没有返回条件的元素返回空数组。

例子1

var 

说明:原数组不发生变化返回的满足条件的新数组:

列子2:只能去重普通数组!对象数组不可去重

var 

例子3:求两个数组的交集和并集

const 

4:Array.reduce()函数累加器:

语法:

array

回调函数:必传参数:用于执行每个数组元素的函数;

回调函数的参数:

total:必传 ,初始值,或计算结果后的返回值;

currentValue:必传,当前元素

currentIndex:当前元素的索引

arr:当前元素所属的数组对象;

initialValue:可选传递给函数的初始值:

例子1:二维数组合并成一维数组;

let 

例子2:对象去重:reduce的第一个参数是回调函数:第二个参数是传递给函数的初始值:

let 

5 Array.some(), Array.every()

语法:

array

回调函数:回调函数是必传的参数:

thisValue:可选参数,传递给函数的值一般用this的值!如果这个参数为空undefined会传递给this值!

回调函数的的三个参数:

回调函数里的参数currentValue:必选参数!当前元素的值!

index :可选当前元素的索引值!

arr:可选。当前所属的数组对象!

技术细节:返回值:是布尔值;如果数组中的有元素满足检测条件返回true否则返回false;

Array.every();技术细节:所有元素通过检测返回true;否则返回false;

例子

(

5Array.join():将数组转化成字符串,并以特定的符号分开;

用法;把数组的所有元素放入一个字符串;

元素是通过分隔符进行分隔的;

语法:

arrayObject

separator:可选参数,指定使用分隔符,如果省略该参数就以,分隔。

返回值

返回一个字符串。该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。

例子1

<

输出:

George,John,Thomas

例子2,

(

例子3

(

6Array.slice(下标(必须),下标(非必须))

(1)正确示例 slice(); substring()同理

let 

7 Array.splice(下标(必须),删除个数(必须),新增元素(非必须))

1)正确示例 splice(); substr()同理

let 

8 Array.push(),Array.pop(),Array.unshift(),Array.shift()

push: 末尾添加

pop: 删除末尾

unshift: 头部添加

shift: 删除头部

都会改变原数组

(

9 Array.isArray()判断一个数是不是数组返回布尔值;

(1)正确示例console.log(Array.isArray('11')); // falseconsole.log(Array.isArray([1,2])); // true

10.Array.concat()连接数组,es6可以用拓展操作符,合并数组。

(

11。Array.indexOf(),Array.lastIndexOf()

检索数组或字符串,返回下标,如果不存在返回-1

(

12.Array.find()

参数是回调函数,数组成员依次执行该回调函数,找出第一个返回值为true的成员,并返回该成员

定义和用法:

find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。

find() 方法为数组中的每个元素都调用一次函数执行:

  • 当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。
  • 如果没有符合条件的元素返回 undefined

注意: find() 对于空数组,函数是不会执行的。

注意: find() 并没有改变数组的原始值。

语法:

array

回调函数是必穿的参数,thisValue是可选参数!对象作为该执行回调同时使用,传递给函数用作this的值!如果省略thisValue,或者传入null,undefined,那么回调函数的this为全局对象!

回调函数里的参数currentValue:必选参数!当前元素的值!

index :可选当前元素的索引值!

arr:可选。当前所属的数组对象!

技术细节:

返回符合条件的第一个数组元素值,如果没有返回undefined。

1

13Array.includes()

检测数组是否包含某个值:如果包换则赶回true,否则返回false!

例子:1

let 

定义用法:

includes()方法:判断一个组是否包含指定值:如果包含返回true,否则返回false

[

语法;

arr

参数说明

searchElement:必须需要查找的元素值:

fromIndex:可选,从该索引开始出查找searchElement,,如果为负值,则按升序从 array.length + fromIndex 的索引开始搜索。默认为 0。

var 

计算出的索引小于 0

如果 fromIndex 为负值,计算出的索引将作为开始搜索searchElement的位置。如果计算出的索引小于 0,则整个数组都会被搜索。

/ 数组长度是3

14.Array.reverse(),Array.sort()

reverse: 反转数组的顺序

sort: 排序

都会直接改变原数组;

1

数组和操作的方法用法很多,需要场景灵活应用现在就分享这么多!

往数组里添加键值对_框架都是花哨的东西!js才是根基,分享一下给原生js数组的操作...相关推荐

  1. 如何动态的向数组中插入键值对_在Java中实现的一个简单“HashMap”

    如何创建Hash表 对于把K(键)-V(值)这样的键值对插入Hash表中,需要执行两个步骤: 1.使用散列函数将K转换为小整数(称为其哈希码). 2.哈希码用于查找索引(hashCode%arrSiz ...

  2. JS 数组动态添加键值对

    // 方法 // 数组.push({[动态添加的键]:动态添加的值this.form.colors.push({['value']:this.inputValue})//一次传两个键值对arr.pus ...

  3. vue 往对象中添加键值对_【Vue】Vue学习之混入

    今天学习了Vue中的"混入"知识点,写篇文章用自己的语言来向自己解释它,如有不足还望指点. 混入(mixins): 混入提供了一种非常灵活的方式,来分发Vue组件中的可复用功能 - ...

  4. python列表中的字典如何添加键值对_在Python中将键值对添加到字典中

    Python字典是键值对的无序集合.在本教程中,我们将看到如何将新的键值对添加到已经定义的字典中.以下是我们可以使用的两种方法. 将新键分配为下标 我们通过使用新键作为下标并为其分配值来向字典添加新元 ...

  5. php数组foreach循环添加键值对_在PHP的foreach循环中插入一个$key作为变量

    我有这个数组: $lista_agregados = array('po' => '0', 'brita' => '0'); 而这些数组: $po = array(0 => arra ...

  6. php数组foreach循环添加键值对_循环 - PHP二维数组根据键值对获取一组数组 (不使用foreach)...

    问 题 $user = array( 0 => array( 'id' => 1, 'name' => '张三', 'email' => 'zhangsan@sina.com' ...

  7. php数组循环添加键值对

    二维数组添加方法:循环$listening_collect是一个二维数组,往里面添加一个you_answer元素 $listening_collect = $this->ser_toefllis ...

  8. php数组foreach循环添加键值对_php 给数组增加键值对

    php给数组增加键值对的方法:首先创建一个PHP示例文件:然后使用foreach语句为数组增加键值对即可,其语句如"foreach ($a as &$item) {$item['b' ...

  9. php数组只保留键值,php合并数组并保留键值的实现方法

    php合并数组,一般会使用array_merge方法. array_merge - 合并一个或多个数组 array array_merge ( array $array1 [, array $... ...

最新文章

  1. Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
  2. Android_View_得到Activity
  3. 深入理解浏览器解析和执行过程
  4. Android 高级编程【6个实战案例(附源码):刮刮卡、补间动画、逐帧动画、Fragment、RecyclerView、下拉刷新】
  5. 《从0到1学习Flink》—— 介绍Flink中的Stream Windows
  6. 音频开发中常见的四个错误
  7. ASP.NET Core Web API + Ng6 实战视频 Day 2
  8. setjmp.h(c标准库)
  9. 碉堡了,独家首发Java核心知识点总结,超全!
  10. Javascript 调用MSAgent(调用office助手显示动画)
  11. 微星主板节能模式怎么关闭_技嘉小雕、微星迫击炮、华硕电竞特工三款主板对比...
  12. 电子统计台账:中文标记月度流水账格式数据的转换,以及过滤模板的普遍适配性
  13. 手机、电脑录制内部声音的方法
  14. Dingo Api请求接口404?
  15. 111、爆炸极限的概念
  16. 手机端Alook浏览器手动抓取京东Cookie教程
  17. 什么是死锁?如何避免死锁?
  18. JAVA_基础部分_综合篇
  19. 政府信息化与电子政务、企业信息化与电子商务、数据库和数据仓库的区别、商业智能系统处理过程、数据仓库结构图、数据挖掘、数据仓库和数据湖的对比
  20. stm32 ST-Link V2下载出现 No target connected问题

热门文章

  1. 绝对不能错过!计算机视觉入门必备
  2. 腾讯广告“虚拟IP”赛题突出重围,入选第七届“互联网+”双创大赛产业命题
  3. crc错误 modbus poll_干货丨从Modbus开始说现场总线!
  4. python中类里self_Python类中的self到底是干啥的
  5. 外贸电商ERP都有哪些值得用?
  6. B站手动蹦迪,音效十根柱子31 62 125 250 500 1K 2K 4K 8K 16K怎么调
  7. 吴恩达机器学习 9.机器学习系统设计
  8. 生成对抗式网络 GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN等原理介绍、应用介绍及简单Tensorflow实现
  9. python入门——列表+元组+字典+集合
  10. Python爬虫十六式 - 第三式:Requests的用法