判断数组对象中,同一属性,值是否相同

简介: js


使用背景:筛选跳转链接,跳转链接一致,就通过跳转,不一致,就不通过

const arr = [
{

name: "蓝色",
spec: "颜色",
checked: false,

},
{

name: "少年",
spec: "适用人群",
checked: false,

},
{

name: "黑色",
spec: "颜色",
checked: true,

},
{

name: "灰色",
spec: "颜色",
checked: true,

},
{

name: "年轻人",
spec: "适用人群",
checked: false,

},
];

方法一:

arr.every((e) => e.checked === false) ? console.log('通过') : console.log('不通过'); // 不通过
方法二:

arr.find((e) => e.checked === true) === undefined ? console.log('通过') : console.log('不通过'); // 不通过
方法三:

arr.findIndex((e) => e.checked === true) === -1 ? console.log('通过') : console.log('不通过'); // 不通过
方法四 — 拓展非布尔类型判断:

arr.some((e) => arr.filter((e1) => e1.spec === e.spec).length > 1) ? console.log('通过') : console.log('不通过'); // 通过
方法五 — 拓展非布尔类型判断:

arr.some((cur,idx,array)=>array.slice(idx+1).find(item=>cur.spec==item.spec)) ? console.log('通过') : console.log('不通过'); // 通过

目录
相关文章
|
前端开发 JavaScript UED
使用JavaScript实现动画效果
【4月更文挑战第21天】使用JavaScript实现动画效果
413 10
|
资源调度 JavaScript 定位技术
Vue使用高德地图实现点击获取经纬度以及搜索功能
Vue使用高德地图实现点击获取经纬度以及搜索功能
1421 0
|
小程序
小程序-uniapp:实现锚点连接/锚点跳转
小程序-uniapp:实现锚点连接/锚点跳转
1587 0
|
JavaScript IDE API
vue3--setup--父子组件传参-监听
vue3--setup--父子组件传参-监听
919 0
|
7月前
|
人工智能 Java 开发工具
OoderAgent 实战指南:从搭建环境到开发到开发第一个自己的skill能力
本文为 ooder SuperAgent 开源框架的实战指南,基于 MIT 协议,介绍其三层 Agent 架构(End/Route/MCP)、AI 能力标准化、P2P 服务发现及 Skillflow 编排等核心特性,并提供环境配置、技能开发、测试部署全流程实操说明。(239字)
|
存储 JavaScript 前端开发
史上最详细JavaScript数组去重方法(11种)
使用set和Array.from ()方法 array.from可以将set结构转成数组
484 7
|
数据采集 JavaScript 前端开发
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)
用array.filter()来实现数据筛选、数据清洗和链式调用,相对于for循环更加清晰,语义化强,能显著提升代码的可读性和可维护性。博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
在 Vue.js 中使用 watch 来监听对象属性的变化
在 Vue.js 中使用 watch 来监听对象属性的变化
|
JavaScript 索引
Vue 3 数组变更详解:哪些操作会修改原数组?| 笔记
在处理数组时,了解哪些操作会修改原数组,哪些操作不会修改原数组,对高效编写 Vue 应用程序至关重要。本文将详细介绍 Vue 3 中的常见数组操作,并按照是否会修改原数组进行分类说明。
963 2
|
移动开发 JavaScript API
HTML5 拖放详解
HTML5 的拖放功能增强了网页的互动性和用户友好性,允许用户通过拖动操作移动网页元素。其核心包括拖动源和放置目标,并提供了 `draggable` 属性及多个事件(如 `dragstart`、`dragover` 和 `drop`)来实现这一功能。示例代码展示了如何使用这些 API 创建一个简单的拖放组件,通过设置样式和监听事件来提升用户体验。在实际应用中,需注意样式提示和浏览器兼容性测试。