ES6数组方法比较

console.log("**************数组方法比较***************");
{var arr = [1, 2, 3, 4, 5, 6];console.log(arr.some(item => {return item > 3;}));// 输出结果:true//some判断数组中的每一项是否满足条件,遇到第一个满足条件的项,就立刻跳出循环,返回 true,都不满足条件,返回false
}
{var arr = [1, 2, 3, 4, 5, 6];console.log(arr.every(item => {return item > 3;}));// 输出结果:false//every判断数组中的所有项是否都满足条件,都满足返回true,如果有一项不满足,就立刻跳出循环,返回false
}
{var arr = [1, 2, 3, 4, 5, 6];console.log(arr.map(item => {return item > 3;}));// 输出结果:[false, false, false, true, true, true]//map依次判断每一项,直到最后一项,返回一个新数组,这个新数组的每一项为依次判断的结果,满足条件为true,不满足条件为false
}
{var arr = [1, 2, 3, 4, 5, 6];console.log(arr.filter(item => {return item > 3;}));// 输出结果: [4, 5, 6]//filter判断每项是否满足条件,返回一个新数组,把满足条件的放到这个新数组里
}
{var arr = [1, 2, 3, 4, 5, 6];console.log(arr.includes(3));//includes 的作用是判断数组中是否存在某个值,返回true/false,some是判断数组中的每项是否满足提交,如果遇到都一个满足条件的就返回true,都不满足返回false,every的作用是判断数组中的每一项是否都满足条件,都满足返回true,有一项不满足,就跳出循环,并返回false,
}
{let arr = [1,[2, 3, ["b", "c", [33, 666, 99, [99, "J"]]]]]console.log(arr.flat());//[1,2,3,["b","c",[33,666,99,[99,"J"]]]]console.log(arr.flat(4));//[1, 2, 3, 'b', 'c', 33, 666, 99, 99, 'J']
}
{let arr = [{name: "01",list: ["安庆", "安阳", "鞍山"]}, {name: "02",list: ["湖州", "阜阳", "抚顺"]}]console.log(arr.flatMap(item => item.list));
}
{let list = [1, 2, 2, "kerwin", "kerwin", [1, 23, [3.4], [1, 2], 3, { name: "kerwin" }, { age: 100 }, { name: "kerwin" }], undefined, undefined, NaN, NaN]function uni(arr) {let res = new Set()return arr.filter(item => {let id = JSON.stringify(item)//判断has trun false//没有return trueif (res.has(id)) {return false} else {res.add(id)return true}})}console.log(uni(list))}
{let list = [1, 2, 3, 4, 5, 2, 499, 155, 66, 72, 666, 5, 2, 5, 6, 5, 55, 15, 56, 24, 5, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]let set = new Set(list)let newlist = [...set]console.log(newlist);console.log(Array.from(set));let sortlist = newlist.sort((a, b) => a - b)console.log(sortlist);
}
{let arr = [{ name: "01", age: 22 },{ name: "02", age: 2 },{ name: "03", age: 52 },{ name: "04", age: 13 },{ name: "05", age: 15 },]let newarr = arr.sort((a, b) => a.age - b.age)console.log(newarr);
}
// {
//     // let p1 = () => {
//     //     return new Promise((resolve, reject) => {
//     //         setTimeout(() => {
//     //             resolve("p1---执行了")
//     //         }, 1000);
//     //     }).then((res) => {
//     //         console.log(res);
//     //     })
//     // }
//     // let p2 = () => {
//     //     return new Promise((resolve, reject) => {
//     //         setTimeout(() => {
//     //             resolve("p2---执行了")
//     //         }, 1000);
//     //     }).then((res) => {
//     //         console.log(res);
//     //     })
//     // }
//     // let p3 = () => {
//     //     return new Promise((resolve, reject) => {
//     //         setTimeout(() => {
//     //             //resolve("p3---执行了")
//     //             reject()
//     //         }, 1000);
//     //     }).then((res) => {
//     //         console.log(res);
//     //     })//     // }
//     let p1 = new Promise((resolve, reject) => {
//         setTimeout(() => {
//             resolve("p1---执行了")
//         }, 1000);
//     }).then((res) => {
//         console.log(res);
//     })
//     let p2 = new Promise((resolve, reject) => {
//         setTimeout(() => {
//             resolve("p2---执行了")
//         }, 1000);
//     }).then((res) => {
//         console.log(res);
//     })
//     let p3 = new Promise((resolve, reject) => {
//         setTimeout(() => {
//             //resolve("p3---执行了")
//             reject()
//         }, 1000);
//     }).then((res) => {
//         console.log(res);
//     })
//     Promise.all([p1, p2, p3]).then((res) => {
//         console.log("%cPromise.all执行成功了", "color: red;font-size:16px", res)
//     })
//         .catch((error) => {
//             console.log("%cPromise.all执行失败了", error)
//         })
//     // Promise.race([p1, p2, p3]).then((res) => {
//     //     console.log("%cPromise.race执行成功了", "color: red;font-size:16px", res)
//     // })
//     //     .catch((error) => {
//     //         console.log("%cPromise.race执行失败了", error)
//     //     })
//     // Promise.any([p1, p2, p3]).then((res) => {
//     //     console.log("%cPromise.any执行成功了", "color: red;font-size:16px", res)
//     // })
//     //     .catch((error) => {
//     //         console.log("%cPromise.any执行失败了", error)
//     //     })
//     // Promise.allSettled([p1, p2, p3]).then((res) => {
//     //     console.log("%cPromise.allSettled执行成功了", "color: red;font-size:16px", res)
//     // })
//     //     .catch((error) => {
//     //         console.log("%cPromise.allSettled执行失败了", error)
//     //     })
// }
{let p1 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p1--all---执行了")}, 1000);}).then((res) => {console.log(res);})let p2 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p2--all---执行了")}, 1000);}).then((res) => {console.log(res);})let p3 = new Promise((resolve, reject) => {setTimeout(() => {//resolve("p3--all---执行了")reject()}, 1000);}).then((res) => {console.log(res);})Promise.all([p1, p2, p3]).then((res) => {console.log("%cPromise.all执行成功了", "color: green;font-size:22px", res)}).catch((error) => {console.log("%cPromise.all执行失败了", "color: red;font-size:22px", error)})}
{let p1 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p1--race---执行了")}, 1000);}).then((res) => {console.log(res);})let p2 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p2--race---执行了")}, 1000);}).then((res) => {console.log(res);})let p3 = new Promise((resolve, reject) => {setTimeout(() => {//resolve("p3--race---执行了")reject()}, 1000);}).then((res) => {console.log(res);})Promise.race([p1, p2, p3]).then((res) => {console.log("%cPromise.race执行成功了", "color: green;font-size:22px", res)}).catch((error) => {console.log("%cPromise.race执行失败了", "color: red;font-size:16px", error)})}
{let p1 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p1--any---执行了")}, 1000);}).then((res) => {console.log(res);})let p2 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p2--any---执行了")}, 1000);}).then((res) => {console.log(res);})let p3 = new Promise((resolve, reject) => {setTimeout(() => {//resolve("p3--any---执行了")reject()}, 1000);}).then((res) => {console.log(res);})Promise.any([p1, p2, p3]).then((res) => {console.log("%cPromise.any执行成功了", "color: green;font-size:22px", res)}).catch((error) => {console.log("%cPromise.any执行失败了", "color: red;font-size:16px", error)})}
{let p1 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p1--allSettled---执行了")}, 1000);}).then((res) => {console.log(res);})let p2 = new Promise((resolve, reject) => {setTimeout(() => {resolve("p2--allSettled---执行了")}, 1000);}).then((res) => {console.log(res);})let p3 = new Promise((resolve, reject) => {setTimeout(() => {//resolve("p3--allSettled---执行了")reject()}, 1000);}).then((res) => {console.log(res);})Promise.allSettled([p1, p2, p3]).then((res) => {console.log("%cPromise.allSettled执行成功了", "color: green;font-size:22px", res)}).catch((error) => {console.log("%cPromise.allSettled执行失败了", "color: red;font-size:16px", error)})
}{function timer(t) {return new Promise(resolve => {setTimeout(() => {resolve(t)}, t)})}async function* fn() {yield timer(1000)//任务1yield timer(2000)//任务2yield timer(3000)//任务3}// 使用一下 for await ...ofasync function fn1() {for await (const val of fn()) {console.log("start", Date.now())console.log(val);console.log("end", Date.now())}}fn1();
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/729481.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Alias许可配置

在数字化时代,软件已成为企业竞争的核心要素。然而,随着软件市场的日益复杂,如何合理配置和使用软件许可,已成为企业亟待解决的问题。Alias许可配置服务,凭借其卓越的功能和性能,帮助企业优化软件使用&…

SQL 中避免使用 != 或 <>

1. 索引效率 ! 或 <> 操作符通常无法有效利用索引&#xff0c;因为它们选择除了某个特定值之外的所有值&#xff0c;这可能涉及到表中的大多数行。相比之下&#xff0c;使用 或其他范围查询&#xff08;如 <, <, >, >&#xff09;通常可以更好地利用索引&a…

想交易盈利?Anzo Capital昂首资本发现了一本畅销书

要想在复杂多变的外汇市场中迅速加深了解并想通过交易每天都可以盈利&#xff0c;是通过每天阅读大量的书籍吗&#xff1f;是每天成为行业培训网络资源和论坛的常客吗&#xff1f;是通过花钱请有经验的交易者进行个人培训吗&#xff1f;还是进行EA交易呢&#xff1f; 都不是&a…

【VTKExamples::Points】第二期 DensifyPoints

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例DensifyPoints,并解析接口vtkDensifyPointCloudFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力…

Spring Cloud Gateway介绍及入门配置

Spring Cloud Gateway介绍及入门配置 概述&#xff1a; Gateway是在Spring生态系统之上构建的API网关服务&#xff0c;基于Spring6&#xff0c;Spring Boot 3和Project Reactor等技术。它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式&#xff0c;并为它们提供…

第十五课 PCB保姆级规则设置(四)

1.常用的规则设置 2.设置完规则后&#xff0c;重新设置规则检查 将不设置的规则&#xff0c;不勾选 3.布线规则 &#xff08;1&#xff09;先走短线&#xff08;模块之内的线&#xff09; 模块之内的线需要连接&#xff0c;长线的话提前打孔&#xff08;占位置&#xff09;…

盘点热门的5个AI视频工具(上):附保姆级教程,居然还有免费的?(建议收藏)

一条完全使用 AI 做出的短视频&#xff0c;点赞上万&#xff0c;转发上万&#xff01; 你敢信&#xff0c;这是我在前几天刷视频的时候&#xff0c;看到的一个 AI 视频案例。 这种 AI 视频为什么会火&#xff1f; AI 虽然不是什么新的领域&#xff0c;但 2023 年&#xff0c…

如何批量更改图片的创建时间和修改时间 ? 图片属性更改

在数字时代&#xff0c;图像已经成为我们日常生活中不可或缺的一部分。无论是在社交媒体上分享生活点滴&#xff0c;还是在工作报告中展示数据成果&#xff0c;图像都扮演着至关重要的角色。然而&#xff0c;有时我们可能需要对图像进行一些调整&#xff0c;以更好地满足我们的…

【MyBatis面试题】

目录 前言 1.MyBatis执行流程。 2.Mybatis是否支持延迟加载&#xff1f; 3.延迟加载的底层原理知道吗&#xff1f; 4.Mybatis的一级、二级缓存用过吗&#xff1f; 5.Mybatis的二级缓存什么时候会清理缓存中的数据&#xff1f; 总结 前言 本文主要介绍了MyBatis面试题相…

机器学习的魔法(一)从零开始理解吴恩达的精炼笔记

一、机器学习是什么&#xff1f; 1、机器学习的概念 机器学习是一种人工智能领域的技术和方法&#xff0c;旨在使计算机系统能够从经验数据中自动学习和改进&#xff0c;而无需显式地进行编程。它涉及开发算法和模型&#xff0c;使计算机能够自动分析和理解数据&#xff0c;并…

基于DoDAF的航空装备智能保障系统体系结构建模

源自&#xff1a;系统工程与电子技术 作者&#xff1a;苗学问, 董骁雄, 钱征文, 胡杨, 李牧东 “人工智能技术与咨询” 发布 摘 要 保障系统结构建模是发展和构建新一代航空装备智能保障系统的重要基础。航空装备保障系统涉及保障要素多、交联关系复杂, 需从系统工程的角度…

详细介绍什么是美国FDA认证介绍

美国FDA认证是指由美国食品药品监督管理局&#xff08;Food and Drug Administration&#xff0c;简称FDA&#xff09;颁发的一种认证&#xff0c;它主要用于确保在美国市场上销售的食品、药品、医疗器械、生物制品、化妆品等产品的安全性和有效性。FDA认证是美国政府为了保护公…

centos7.9离线升级openssl和openssh9.2

1、查看本机ssh版本 ssh -VOpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013 可以看到openssh的版本是6.6.1&#xff0c;openssl版本是1.0.1 2、准备工作 gcc&#xff1a;https://pan.baidu.com/s/1RcnWouHwDaq-rkto6SYaBA 提取码&#xff1a;dwvf zlib-1.2.13&#xf…

单链表的实现(数据结构)

本篇博客主要是单链表&#xff08;无头单项不循环&#xff09;的实现的代码分享 说明&#xff1a;因为此单链表无头&#xff08;哨兵位&#xff09;&#xff0c;可以说成没有初始化也可以说初始化时没有一个有效地址作为单链表的起始地址 例如下面代码中的plist NULL。 所以在…

ldm 的pip错误安装问题

基于diffsion的很多工作需要使用ldm库&#xff0c;但是部分仓库的教程没有写明是哪个ldm。 这导致了如下问题&#xff1a; 错误安装了pypi的ldm 当运行代码&#xff1a; pip install ldm时&#xff0c;安装的时这个库&#xff1a; https://pypi.org/project/ldm/ 中的ldm&a…

倒计时!数境·第七届工业互联网数据创新应用大赛即将截止报名

共赴数据之旅&#xff0c;赋能工业未来&#xff01; 由深圳市宝安区人民政府和 中国信息通信研究院共同主办的 数境第七届工业互联网数据创新应用大赛 以“数实融合&#xff0c;助推新型工业化”为主题 聚焦先进制造、新能源和电子信息领域 设置算法赛和方案赛共三大赛道…

#QT(串口助手-界面)

1.IDE&#xff1a;QTCreator 2.实验&#xff1a;编写串口助手 3.记录 接收框:Plain Text Edit 属性选择&#xff1a;Combo Box 发送框:Line Edit 广告&#xff1a;Group Box &#xff08;1&#xff09;仿照现有串口助手设计UI界面 &#xff08;2&#xff09;此时串口助手大…

爬虫入门到精通_框架篇15(Scrapy框架安装)

1 Scrapy安装 Scrapy的安装有多种方式&#xff0c;它支持Python2.7版本及以上或Python3.3版本及以上。下面说明Python3环境下的安装。 Scrapy依赖的库比较多&#xff0c;至少需要依赖库有Twisted14.0,lxml 3.4,pyOpenSSL 0.14。而在不同平台环境又各不相同&#xff0c;所以在安…

3/7—21. 合并两个有序链表

代码实现&#xff1a; 方法1&#xff1a;递归 ---->难点 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* mergeTwoLists(struct ListNode *list1, struct ListNode *list2) {/*1.如果l1为…

2024最新图标设计趋势!附超好用的图标工具清单

图标&#xff0c;在界面设计中的作用不容小觑。正所谓浓缩的就是精华&#xff0c;一个小小的图标&#xff0c;却有着高效传递信息、美化界面排版、提升用户体验的巨大能力。 既然图标如此重要&#xff0c;了解图标设计趋势对设计师来说几乎是必须要做的事&#xff0c;它可以让…