ES6-11学习笔记--数组遍历
let arr = [1, 2, 3];
for循环:
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
forEach():
forEach有三个参数:当前元素,当前索引值,数组本身
arr.forEach((item, index, array) => {
console.log(item, index, array);
});
let result = arr.map((value) => {
value++;
return value;
});
console.log(arr, result);
let farr = [1, 2, 3];
let fresult = farr.filter((value) => {
return value === 2;
});
console.log(farr, fresult);
let sresult = arr.some((value) => {
return value === 2;
})
console.log(arr, sresult);
let eresult = arr.every((value) => {
return value === 2;
})
console.log(arr, eresult);
let sum = arr.reduce((prev, cur, index, array) => {
// 上一次处理的结果加上当前元素值
return prev + cur
}, 0)
console.log(sum, arr);
let max = arr.reduce((prev, cur) => {
return Math.max(prev, cur)
}, arr[0])
console.log(max);
let arr2 = [1, 2, 2, 3, 4, 1]
let dresult = arr2.reduce((prev, cur) => {
// 当cur不在prev的时候,prev增加一项cur
prev.indexOf(cur) == -1 && prev.push(cur)
return prev
}, [])
console.log(dresult);
Array.prototype.foo = function () {
console.log('foo');
}
for (let index in arr) {
console.log(index, arr[index])
}
let f1 = arr.find((value) => {
return value < 2
})
console.log(f1, arr);
let f2 = arr.findIndex((value) => {
return value < 2
})
console.log(f2, arr);
for (let item of arr) {
console.log(item);
}
for (let item of arr.values()) {
console.log(item);
}
这里跟for of效果一样
for (let item of arr.keys()) {
console.log(item);
}
for (let [index, item] of arr.entries()) {
console.log(index, item);
}
ES6-11学习笔记--数组遍历的更多相关文章
- C++11 学习笔记 std::function和bind绑定器
C++11 学习笔记 std::function和bind绑定器 一.std::function C++中的可调用对象虽然具有比较统一操作形式(除了类成员指针之外,都是后面加括号进行调用),但定义方法 ...
- PHP学习之中数组-遍历一维数组【2】
在PHP学习之中数组[1]中学会怎么创建一个数组,如果PHP学习之中数组[1]中的元素多的话,我们访问元素又是一个问题了,下面我们就使用for语句while,foreach来遍历我们的数组: < ...
- JavaScript学习笔记-数组
数组 数组中的每个元素的位置是索引,索引是基于32位的由0开始的数值,最大索引为(2的32次方-2),最大长度为(2的32次方-3) 数组是无类型的:元素可为任意类型:动态的:可根据需要自动增长.缩减 ...
- JavaScript学习笔记-数组(1)
数组是值的有序集合.每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引.JavaScript数组是无类型的:数组元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类型.数 ...
- Java菜鸟学习笔记--数组篇(三):二维数组
定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...
- JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序
前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...
- java学习笔记 --- 数组
一.Java的内存分配 A:栈内存: 存储局部变量,只要是在方法中定义的变量都是局部变量.一旦变量的生命周期结束该变量就被释放. B:堆内存: 存储所有new出来的,及实体(对象),每一个实体 ...
- ES6-11学习笔记--数组的扩展
类数组 / 伪数组 Array.from() Array.of() copyWithin() fill() includes() 类数组.伪数组例子: let divs = document.ge ...
- JavaScript(ES6)学习笔记-Set和Map与数组和对象的比较(二)
一.Map,Set,Array对比: 1.增 let map = new Map(); let set = new Set(); let array = []; map.set('t',1); //M ...
随机推荐
- JAVA 猜拳游戏
JAVA 猜拳游戏 题目:通过控制台方式实现一个人机对战的猜拳游戏 用户通过输入(0.石头子 1.剪刀 2.布),机器随机生成(0.石头子 1.剪刀 2.布) 要求: 能打印玩家的对局信息,胜利的次数 ...
- 安卓手机APP兼容性测试如何有效进行?
Android App兼容性测试是一个比较重要的App评价内容,实际上兼容性测试不仅仅和测试人员相关,在开发阶段就应当着重考虑,因为兼容性问题是除了实现App本身要求的功能后,必须要关注.而且至关重要 ...
- Scala语法2
练习 package scala_01.practice import org.junit.{Before, Test} import scala.collection.immutable impor ...
- LGP6156题解
真·简单题 题目大意 给定 \(n\) 和 \(k\),求出这个柿子的值: \[\sum_{i=1}^n\sum_{j=1}^n(i+j)^k\mu^2(\gcd(i,j)gcd(i,j) \] 按照 ...
- 『现学现忘』Docker基础 — 26、Docker镜像分层的理解
目录 1.分层的镜像 2.加深理解 3.特别说明 1.分层的镜像 我们可以去下载一个镜像,注意观察下载的日志输出,可以看到Docker的镜像是一层一层的在下载. 思考:为什么Docker镜像要采用这种 ...
- 关于dotnet动态生成controller的问题
一些动态生成controller的问题 前言 最近在写包, 一开始封装了仓储Repository用于操作数据库, 然后为了快速开发一些业务简单的接口, 通过QueryController , Modi ...
- angularJs 指令的用法
<!DOCTYPE html><html ng-app='app'><!--A attribute属性:当做属性来使用<div xingoo></div ...
- VuePress 博客之 SEO 优化(五)添加 JSON-LD 数据
前言 在 <一篇带你用 VuePress + Github Pages 搭建博客>中,我们使用 VuePress 搭建了一个博客,最终的效果查看:TypeScript 中文文档. 本篇讲 ...
- 空顺序表的实现(基于c语言)
书中对于创建一个空线性表的定义如下: struct SeqList{ int MAXNUM; // 顺序表中最大元素的个数(也就是最多多少个元素),(其实MAXNUM也可以定义在外面) int n; ...
- SQL语句优化、mysql不走索引的原因、数据库索引的设计原则
SQL语句优化 1 企业SQL优化思路 1.把一个大的不使用索引的SQL语句按照功能进行拆分 2.长的SQL语句无法使用索引,能不能变成2条短的SQL语句让它分别使用上索引. 3.对SQL语句功能的拆 ...