JavaScript >> Javascript 文檔 >  >> JavaScript

如何使用 JavaScript 在數組中查找匹配項

上週,我們詳細研究了 JavaScript 數組以及如何使用它們將多個值存儲在單個變量中。今天,您將學習一個有用的技巧,使用 Array.filter() 查找數組中的所有匹配項 方法。

Array.filter() 方法通過遍歷數組的所有元素來創建一個新數組,並將通過特定條件的元素作為數組返回。

作為參數傳遞的回調函數最多接受三個可選參數。第一個是迭代中的當前元素,第二個是當前項在數組中的索引,第三個是數組本身。

在回調正文中,您可以測試當前項目是否與您要查找的內容匹配,並返回一個布爾值 (truefalse ) 相應地。

這是一個例子:

const values = [15, 45, 22, 19, 55, 62, 78];

// find all values > 25
const greaterThan25 = values.filter(item => {
    return item > 25;
});

// find all values < 25
const lessThan25 = values.filter(item => item < 25);

console.log(greaterThan25);
// [45, 55, 62, 78]

console.log(lessThan25);
// [15, 22, 19]

Array.filter() 方法不僅限於原始數組。您甚至可以使用它來過濾對像數組 如下例所示:

const users = [
    {
        name: 'John Deo',
        age: 35
    },
    {
        name: 'Emma Kel',
        age: 24
    }
    ,
    {
        name: 'Kristy Adam',
        age: 42
    }
];

// find all users older than 40 years
const filteredUsers = users.filter(user => {
    return user.age >= 40;
});

console.log(filteredUsers);
// [{ name: 'Kristy Adam', age: 42 }]

Array.filter() 過濾器適用於所有現代瀏覽器以及 Internet Explorer 9 及更高版本。但是,您可以使用 polyfill 來支持 IE6 及更高版本。

查看本指南以了解有關 JavaScript 數組及其方法的更多信息。


Tutorial JavaScript 教程
  1. Luka 01 - Rust 中的數學運算

  2. 如何在 JavaScript 字符串中插入變量? |示例代碼

  3. 添加和刪除人員的循環算法

  4. 2020 年在 React 中設置私有路由

  5. Tensorflow.js 的故事 - 第 2 章:模型

  6. 為什麼我要閱讀 Perl 主題,而 Web Dev 社區下一個只讀提到 JavaScript 庫?

  7. 6 種強大的 CSS 技術,你可以用它來代替 Javascript

  1. 如何在javascript中獲取指定時區的一天的開始時間和結束時間?

  2. AWS 上的 Next.js CI / CD 與 GitHub Actions

  3. JQuery 滑塊更改背景顏色和圓形處理程序

  4. 從 html 頁面打印表格

  5. JavaScript 傳播語法 |帶有可迭代對象的示例

  6. DatoRSS 重新造型

  7. React Native 條件渲染

  1. #100DaysOfCode 第 7 天:學習 Jest 以測試 React 組件

  2. 構建 UnSplash Pro

  3. 在 React 應用程序中從本地狀態到 REDUX 商店

  4. 2021 年人員後端開發人員指南 - 我需要知道什麼?!