ES6数组的新增功能,还是很强大的好多地方用的到
map,reduce,filter ,forEach 废话不多说代码走起
map 映射 就是一个对一个
/* 比如:学生成绩分数对应及格不及格
也可以做一些算数运算
*/
let chengji = [12, 58, 99, 86, 45, 91];
/*可以接收返回的值*/
let result = chengji.map( item=> {
if (item >= 60) {
alert(item + "及格")
}
else {
alert(item + "不及格回家叫家长") }
})
reduce 汇总 一堆出来一个
/*算出总数*/
let arr = [12, 69, 180, 8763];
/*
tmp 临时结果(每次第一个数和第二个数相加的结果),
item 第二个数开始走 ,
index 下标(它这里是从第1个开始)
*/
let result = arr.reduce(function (tmp, item, index) {
//alert(tmp + ',' + item + ',' + index);
return tmp + item;
});
alert(result); /*算出平均分*/
let result1 = arr.reduce(function (tmp, item, index) {
if (index != arr.length - 1) { //判断不是最后一次
return tmp + item;
} else { //最后一次哪这总数除以长度
return (tmp + item) / arr.length;
}
}); alert(result1);
filter 过滤器 (可以过滤josn或是数组)
/*过滤出大于10000元商品*/
let arr=[
{title: '男士衬衫', price: 75},
{title: '女士包', price: 57842},
{title: '男士包', price: 65},
{title: '女士鞋', price: 27531}
];
//返回的是一个数组
/*简写方式一行代码就搞定*/
let result=arr.filter(json=>json.price>=10000);
/*不用简写麻烦*/
let result1=arr.filter(function(item){
if(item.price>=10000)
{ return true;
}
})
console.log(result)
for(var i=0;i<result1.length;i++)
{
//取出arr里面的title
alert(result[i].title)
}
/*取出能被3整除的数*/
//它是返回一个bool值,true返回 false过滤掉
let arr1=[12,5,8,99,27,36,75,11];
//
let result2=arr1.filter(item=>item%3==0); alert(result2)
forEach 循环(迭代)
/*这个简单没啥说的*/
let arr=[12,5,8,9];
let arr1=[12,5,8,9];
// item 数组 index 下标
/*简写*/
arr.forEach((item,index)=>{
alert(index+': '+item); }); arr1.forEach(function(item,index){
alert(index + ': ' + item); })
ES6数组的新增功能,还是很强大的好多地方用的到的更多相关文章
- ReSharper的功能真的很强大主要是针对代码规范和优化,园子里介绍的也不少,如果你没有安装,那我只能表示你们会相见恨晚
二.ReSHarper 代码规范.单元测试.... ReSharper的功能真的很强大,主要是针对代码规范和优化,园子里介绍的也不少,如果你没有安装,那我只能表示你们会相见恨晚! 1.像命名不规范,f ...
- ES6数组对象新增方法
1. Array.from() Array.from方法用于将两类对象转为真正的数组:类数组的对象( array-like object )和可遍历( iterable )的对象(包括 ES6 新增的 ...
- zTree V3 是个好东西 功能很强大
zTree V3 是个好东西 功能很强大 地址:http://www.ztree.me/v3/demo.php#_101
- ES6数组扩展
前面的话 数组是一种基础的JS对象,随着时间推进,JS中的其他部分一直在演进,而直到ES5标准才为数组对象引入一些新方法来简化使用.ES6标准继续改进数组,添加了很多新功能.本文将详细介绍ES6数组扩 ...
- VS和Eclipse的调试功能哪个更强大?
以前一直用VS 2012来调试C/C++代码,F5.F10.F11用起来甚是顺手,前面也写过一篇关于VS最好用的快捷键:Visual Studio最好用的快捷键(你最喜欢哪个), 所以对于调试C/C+ ...
- ES6数组的扩展--Array.from()和Array.of()
一. Array.from() : 将伪数组对象或可遍历对象转换为真数组 1.何为伪数组 如果一个对象的所有键名都是正整数或零,并且有length属性,那么这个对象就很像数组,语法上称为"类 ...
- hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档
相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...
- Windows Server 2016-Hyper-V 2016新增功能
本文解释了Windows Server 2016和Microsoft Hyper-V Server 2016上Hyper-V的新增功能和变更功能. 与Connected Standby兼容(新) 在使 ...
- ES6数组新加 Buff
欢迎关注本人公众号<迈向大前端>,里面有15本前端相关的电子书,送给在前端路上迷茫的同学们! 本章篇幅很长,分开来发,这一小篇主要讲ES6数组的Array.of()和Array.from( ...
随机推荐
- Python Scrapy环境配置教程+使用Scrapy爬取李毅吧内容
Python爬虫框架Scrapy Scrapy框架 1.Scrapy框架安装 直接通过这里安装scrapy会提示报错: error: Microsoft Visual C++ 14.0 is requ ...
- 【java】匿名对象
匿名对象使用的场景:1.如果一个对象只调用一个方法一次的时候,就可以用匿名对象来调用. 一般不会用匿名对象给属性赋值,无法获取属性值,每次new 都是一个新的对象. new Car().run();/ ...
- MySQL Master High Available 源码篇
https://m.aliyun.com/yunqi/users/1287368569594542/articles https://yq.aliyun.com/articles/59233 MySQ ...
- xe5 android tts(Text To Speech) [转]
TTS是Text To Speech的缩写,即“从文本到语音”,是人机对话的一部分,让机器能够说话. 以下代码实现xe5 开发的文本转语音的方法 和访问蓝牙一样,这里用javaclass的接口实现 接 ...
- gitlab 10.8.1 迁移
参考官网: https://docs.gitlab.com/ee/raketasks/backup_restore.html Backing up and restoring GitLab 及 ...
- 有趣的background
前言 background是css的简写形式,可以一次性定义各种背景属性,包括color.image.origin.size,repeat方式等等. background在活动项目中用的还是比较多的, ...
- HashMap的自定义实现
一.背景: HashMap到底是怎么实现的? 一对一对的存放,通过key找value:map的键不能重复:自己怎么实现呢? 代码: Wife.java 辅助类 package com.cy.co ...
- C++之二阶构造模式
前言:C++中经常会因为调用系统资源失败导致出现BUG,所以在类调用构造函数需要分配系统资源时会出现BUG,从而导致类对象虽然被创建,但是只是个半成品,为了避免这种情况需要使用二阶构造模式 二阶构造模 ...
- 服务容错保护断路器Hystrix之六:缓存功能的使用
高并发环境下如果能处理好缓存就可以有效的减小服务器的压力,Java中有许多非常好用的缓存工具,比如Redis.EHCache等,当然在Spring Cloud的Hystrix中也提供了请求缓存的功能, ...
- Hive数据导入导出的几种方式
一,Hive数据导入的几种方式 首先列出讲述下面几种导入方式的数据和hive表. 导入: 本地文件导入到Hive表: Hive表导入到Hive表; HDFS文件导入到Hive表; 创建表的过程中从其他 ...