JavaScript——快速判断数组对象的值是否全部满足条件

2024-08-15 13:23:50 浏览数 (3)

前言

EasyBe主题开发中遇到一个问题,查看了下MDN文档找到了比较合适的方法,这里只做了简单的示例,详细的一些描述和原理建议访问MDN进行查看;

every: every ArrayEvery: ArrayEvery

some: some ArraySome: ArraySome

内容

every

every() 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。 若收到一个空数组,此方法在任何情况下都会返回 true。

示例

代码语言:javascript复制
// 判断是否所有值都不为空
let data = [
    {
        "name": "author",
        "value": "123"
    },
    {
        "name": "mail",
        "value": ""
    },
    {
        "name": "url",
        "value": "123"
    },
    {
        "name": "text",
        "value": "12"
    },
    {
        "name": "_",
        "value": "1b411d70cba30e008e45a150e2df995a"
    }
]
data.every(item => item.value !== '')

some

some() 方法测试数组中是不是至少有 1 个元素通过了被提供的函数测试。它返回的是一个 Boolean 类型的值。 如果用一个空数组进行测试,在任何情况下它返回的都是false。

代码语言:javascript复制
const array = [1, 2, 3, 4, 5];

// 检查是否是偶数
const even = (element) => element % 2 === 0;

console.log(array.some(even));
// Expected output: true

0 人点赞