往数组里添加键值对_框架都是花哨的东西!js才是根基,分享一下给原生js数组的操作...
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数组的操作...相关推荐
- 如何动态的向数组中插入键值对_在Java中实现的一个简单“HashMap”
如何创建Hash表 对于把K(键)-V(值)这样的键值对插入Hash表中,需要执行两个步骤: 1.使用散列函数将K转换为小整数(称为其哈希码). 2.哈希码用于查找索引(hashCode%arrSiz ...
- JS 数组动态添加键值对
// 方法 // 数组.push({[动态添加的键]:动态添加的值this.form.colors.push({['value']:this.inputValue})//一次传两个键值对arr.pus ...
- vue 往对象中添加键值对_【Vue】Vue学习之混入
今天学习了Vue中的"混入"知识点,写篇文章用自己的语言来向自己解释它,如有不足还望指点. 混入(mixins): 混入提供了一种非常灵活的方式,来分发Vue组件中的可复用功能 - ...
- python列表中的字典如何添加键值对_在Python中将键值对添加到字典中
Python字典是键值对的无序集合.在本教程中,我们将看到如何将新的键值对添加到已经定义的字典中.以下是我们可以使用的两种方法. 将新键分配为下标 我们通过使用新键作为下标并为其分配值来向字典添加新元 ...
- php数组foreach循环添加键值对_在PHP的foreach循环中插入一个$key作为变量
我有这个数组: $lista_agregados = array('po' => '0', 'brita' => '0'); 而这些数组: $po = array(0 => arra ...
- php数组foreach循环添加键值对_循环 - PHP二维数组根据键值对获取一组数组 (不使用foreach)...
问 题 $user = array( 0 => array( 'id' => 1, 'name' => '张三', 'email' => 'zhangsan@sina.com' ...
- php数组循环添加键值对
二维数组添加方法:循环$listening_collect是一个二维数组,往里面添加一个you_answer元素 $listening_collect = $this->ser_toefllis ...
- php数组foreach循环添加键值对_php 给数组增加键值对
php给数组增加键值对的方法:首先创建一个PHP示例文件:然后使用foreach语句为数组增加键值对即可,其语句如"foreach ($a as &$item) {$item['b' ...
- php数组只保留键值,php合并数组并保留键值的实现方法
php合并数组,一般会使用array_merge方法. array_merge - 合并一个或多个数组 array array_merge ( array $array1 [, array $... ...
最新文章
- Error:warning: Ignoring InnerClasses attribute for an anonymous inner class
- Android_View_得到Activity
- 深入理解浏览器解析和执行过程
- Android 高级编程【6个实战案例(附源码):刮刮卡、补间动画、逐帧动画、Fragment、RecyclerView、下拉刷新】
- 《从0到1学习Flink》—— 介绍Flink中的Stream Windows
- 音频开发中常见的四个错误
- ASP.NET Core Web API + Ng6 实战视频 Day 2
- setjmp.h(c标准库)
- 碉堡了,独家首发Java核心知识点总结,超全!
- Javascript 调用MSAgent(调用office助手显示动画)
- 微星主板节能模式怎么关闭_技嘉小雕、微星迫击炮、华硕电竞特工三款主板对比...
- 电子统计台账:中文标记月度流水账格式数据的转换,以及过滤模板的普遍适配性
- 手机、电脑录制内部声音的方法
- Dingo Api请求接口404?
- 111、爆炸极限的概念
- 手机端Alook浏览器手动抓取京东Cookie教程
- 什么是死锁?如何避免死锁?
- JAVA_基础部分_综合篇
- 政府信息化与电子政务、企业信息化与电子商务、数据库和数据仓库的区别、商业智能系统处理过程、数据仓库结构图、数据挖掘、数据仓库和数据湖的对比
- stm32 ST-Link V2下载出现 No target connected问题
热门文章
- 绝对不能错过!计算机视觉入门必备
- 腾讯广告“虚拟IP”赛题突出重围,入选第七届“互联网+”双创大赛产业命题
- crc错误 modbus poll_干货丨从Modbus开始说现场总线!
- python中类里self_Python类中的self到底是干啥的
- 外贸电商ERP都有哪些值得用?
- B站手动蹦迪,音效十根柱子31 62 125 250 500 1K 2K 4K 8K 16K怎么调
- 吴恩达机器学习 9.机器学习系统设计
- 生成对抗式网络 GAN及其衍生CGAN、DCGAN、WGAN、LSGAN、BEGAN等原理介绍、应用介绍及简单Tensorflow实现
- python入门——列表+元组+字典+集合
- Python爬虫十六式 - 第三式:Requests的用法