Hướng dẫn này giới thiệu cách kiểm tra xem mảng có chứa giá trị trong JavaScript hay không.

Bạn đang xem : kiểm tra xem mảng có chứa phần tử j không

Thông thường, chúng ta thường gặp tình huống để kiểm tra xem mảng có chứa giá trị trong JavaScript hay không. Mặc dù chức năng tìm kiếm có thể được mã hóa bằng các cú pháp JavaScript cơ bản bằng cách sử dụng vòng lặp, nhưng tốt hơn là bạn nên biết các chức năng có sẵn cho tìm kiếm mảng trong JavaScript, cách sử dụng, kiểu trả về và hành vi của chúng. Nó làm cho nhiệm vụ của chúng tôi dễ dàng hơn nhiều, vì chúng tôi cần phải viết mã ít hơn. Chức năng sẽ hiệu quả và ít bị lỗi hơn với các chức năng được tích hợp sẵn. Hãy để chúng tôi xem xét các cách tìm kiếm một phần tử trong một mảng.

Sử dụng . indexOf () Hàm kiểm tra xem Mảng có chứa giá trị trong JavaScript hay không

Hàm .indexOf () là một hàm thường được sử dụng trong javascript. Nó hoạt động tốt khi tìm kiếm một phần tử trong một mảng hoặc thậm chí một chuỗi.

Cú pháp

  indexOf (phần tử, mục lục)
 

Tham số

Nó nhận phần tử để tìm kiếm làm tham số. Và một tham số tùy chọn cho biết hàm, chỉ mục từ nơi bắt đầu tìm kiếm (bắt đầu từ 0 ). Nếu chúng tôi cung cấp một giá trị âm, điều đó có nghĩa là phải tìm kiếm bắt đầu từ cuối mảng ở vị trí được chỉ định.

Trả về Giá trị

Hàm trả về chỉ mục của phần tử tìm kiếm bắt đầu từ 0 trong mảng nếu nó có thể tìm thấy phần tử. Ngược lại, nó sẽ trả về -1 , cho biết rằng nó không thể tìm thấy phần tử. Nếu có nhiều hơn một kết quả phù hợp trong một mảng, thì hàm .indexOf () sẽ trả về chỉ mục của kết quả phù hợp đầu tiên.

Browser Support

Hàm .indexOf () được hỗ trợ cho tất cả các phiên bản trình duyệt chính.

Cách sử dụng

Việc sử dụng của hàm indexOf () trên một mảng như sau.

  let results = ["Apple", "Mango", " Lê "," Đào "];
console.log (fruit.indexOf ("Quả lê"));
console.log (fruit.indexOf ("Tomato"))
 

Đầu ra:

  2
-1
 

Đối với tính năng tìm kiếm, chúng tôi kiểm tra xem kiểu trả về của .indexOf (searchText) có lớn hơn -1 hay không. Nếu vậy, kết quả tìm kiếm phải là true else false . Chúng ta hãy xem xét cùng một ví dụ được thảo luận ở trên để kiểm tra xem một phần tử có tồn tại trong mảng hay không.

  function isFruit (fruitName) {
    let fruit = ["Apple", "Mango", "Pear", "Peach"];
    if (fruit.indexOf (fruitName) & gt; -1) {
        trả về true;
    } khác {
        trả về sai;
    }
}
isFruit ("Quả lê");
isFruit ("Mèo");
 

Đầu ra:

  true
SAI
 

Sử dụng mã .includes () Hàm kiểm tra xem Mảng có chứa giá trị trong JavaScript hay không

Hàm include () của JavaScript kiểm tra xem một phần tử nhất định có hiện diện trong một mảng hay không. Nó trả về một giá trị boolean. Do đó, nó phù hợp nhất khi kiểm tra điều kiện if .

Cú pháp

  bao gồm (từ khóa)
bao gồm (từ khóa, chỉ mục)
 

Tham số

Hàm nhận hai tham số. Thông thường, chúng tôi sử dụng hàm này ở dạng .includes (searchString) . Tham số searchString là phần tử chúng ta muốn tìm kiếm và tham số index đề cập đến chỉ mục mảng bắt đầu từ đó để tìm kiếm. Tham số index là tùy chọn.

Return Value

.includes () trả về true nếu searchString được tìm thấy như một phần tử của mảng. Nếu không tìm thấy, hàm trả về false.

Browser Support

Hàm .includes () hoạt động gần như tất cả các trình duyệt web ngoại trừ Internet Explorer. Do đó, nếu dự án của bạn được hỗ trợ trên IE, bạn có thể phải sử dụng hàm indexOf () .

Cách sử dụng

Hãy để chúng tôi xem xét việc áp dụng include () trong một mảng.

 let results = ["Apple", "Mango", "Pear", "Peach"];
console.log (fruit.includes ("Pear"));
console.log (fruit.includes ("Tomato"))
 

Đầu ra:

  true
SAI
 

Hàm include () có thể được sử dụng trực tiếp trong các điều kiện if vì nó trả về giá trị boolean dưới dạng đầu ra. Ví dụ trên có thể được sử dụng trong if có điều kiện như sau. Chỉ cần lưu ý vì mã này có thể không hoạt động trong IE vì .includes () không được hỗ trợ trong đó.

  function isFruit (fruitName ) {
    let fruit = ["Apple", "Mango", "Pear", "Peach"];
    if (fruit.includes (fruitName)) {
        trả về true;
    } khác {
        trả về sai;
    }
}
isFruit ("Quả lê");
isFruit ("Mèo");
 

Đầu ra:

  true
SAI
 

Sử dụng mã .find () Hàm tìm phần tử trong một mảng trong JavaScript

Một cách khác để kiểm tra xem một phần tử có trong một mảng hay không là sử dụng hàm .find () . So với các hàm .indexOf () .includes () , .find () nhận một hàm làm tham số và thực thi nó trên từng phần tử của mảng. Nó sẽ trả về giá trị đầu tiên thỏa mãn điều kiện như đã đề cập trong hàm tham số.

Cú pháp

 . find ( (keyword) = & gt; {/ * Một số kiểm tra điều kiện * /})
.find ((từ khóa, chỉ mục) = & gt; {/ * Một số kiểm tra điều kiện * /})
 

Tham số

Hàm Array.find () nhận một hàm làm tham số đầu vào của nó. Thông thường, chúng tôi sử dụng các hàm mũi tên làm tham số. Và các hàm mũi tên này có thể chứa các kiểm tra điều kiện như item = & gt; mục & gt; 21 . Một tham số tùy chọn khác là index đại diện cho chỉ số lặp hiện tại. .find () thực thi hàm mũi tên trên mỗi phần tử của mảng. Do đó, nó cung cấp trình lặp làm đối số cho hàm mũi tên để giúp kiểm tra điều kiện thêm.

Return Value

.find () hơi khác so với các hàm indexOf () , include () của javascript. Nó trả về giá trị của phần tử nếu được tìm thấy, nếu không thì hàm trả về giá trị không xác định.

Browser Support

Giống như .includes () Chức năng , .find () hoạt động trong hầu hết các trình duyệt web ngoại trừ Internet explorer. Do đó, chúng tôi nên chắc chắn rằng dự án của mình không được hỗ trợ cho IE trước khi lên kế hoạch sử dụng các hàm như vậy cho các hoạt động của Mảng.

Cách sử dụng

Tham khảo cách sử dụng sau trong một mảng .

  let age = [21, 43, 23, 1, 34, 12, 8];
console.log (age.find (i = & gt; i & gt; 20));
console.log (age.find (i = & gt; i & gt; 21))
 

Đầu ra:

  21
43
 

Chúng tôi có thể hơi ngạc nhiên với kết quả của age.find (i = & gt; i & gt; 21) , vì nó trả về 43 < / code> thay vì 23 là số cao hơn tiếp theo của 21 trong mảng age . Lưu ý rằng hàm .find () trả về phần tử tiếp theo thỏa mãn điều kiện được đề cập trong hàm mảng theo thứ tự thời gian. Để tìm kiếm phần tử bằng khối if , chúng ta có thể sử dụng đoạn mã sau.

  function findPeerAge (myAge) {
    cho age = [21, 43, 23, 1, 34, 12, 8];
    if (age.find (i = & gt; (i === myAge))) {
        trả về true;
    } khác {
        trả về sai;
    }
}
findPeerAge (23);
findPeerAge (40);
 
  true
SAI
 

Sử dụng mã .filter () Hàm tìm kiếm Elemnt trong một mảng trong JavaScript

Hàm .filter () chủ yếu được sử dụng trong các hoạt động xử lý mảng. Đặc biệt là khi nói đến việc lọc các phần tử, đáp ứng một tiêu chí, ra khỏi một mảng. Nó trả về một mảng các phần tử đáp ứng các tiêu chí được xác định trong hàm được truyền dưới dạng đối số.

Cú pháp

Theo cú pháp tương tự như Array.find () .

. filter ((keyword) = & gt; {/ * Một số kiểm tra điều kiện * /})
.filter ((từ khóa, chỉ mục) = & gt; {/ * Một số kiểm tra điều kiện * /})
 

Parameter

Hàm Array.filter () chấp nhận một hàm nội tuyến hoặc hàm mũi tên làm tham số . Hàm mũi tên sẽ giữ các tiêu chí lọc. Hàm .filter () thực thi hàm mũi tên trên mỗi phần tử của mảng và trả về các phần tử thỏa mãn các điều kiện được đề cập trong hàm mũi tên. Hàm mũi tên sẽ có đầu vào là keyword và lần lặp hiện tại là index .

Return Value

Không giống như các hàm tìm kiếm mảng mà chúng ta đã thấy cho đến nay, .filter () trả về một mảng chứa các phần tử thỏa mãn các điều kiện được đề cập trong hàm mũi tên. Nếu phần tử được tìm thấy, mảng được trả về sẽ chứa các phần tử được yêu cầu, nếu không thì một mảng trống sẽ được hàm trả về.

Browser Support

Hàm .filter () được hỗ trợ bởi tất cả các trình duyệt, kể cả Internet Explorer. Vì vậy, bạn có thể sử dụng hàm .filter () mà không cần bận tâm đến sự hỗ trợ của trình duyệt như mong đợi.

Cách sử dụng: Việc sử dụng chức năng này giống như các lần theo dõi

  let age = [21, 43, 23, 1, 34, 12, 8];
console.log (age.filter (i = & gt; i & gt; 20));
console.log (age.filter (i = & gt; i & gt; 21));
 

Đầu ra:

  [21, 43, 23, 34]
[43, 23, 34]
 

Như chúng ta thấy từ kết quả, hàm filter () trả về một mảng. Nếu chúng ta phải tìm kiếm một phần tử trong một mảng, chúng ta có thể sử dụng hàm filter () như được mô tả trong mẫu mã sau. Chúng tôi sử dụng thuộc tính .length của mảng được trả về bởi hàm filter () để xác định xem nó có thể tìm thấy phần tử hay không. Nếu hàm trả về một mảng trống, nó có nghĩa là nó không thể tìm thấy từ khóa tìm kiếm.

  function findAge (myAge) {
    cho age = [21, 43, 23, 1, 34, 12, 8];
    if (age.filter (i = & gt; (i === myAge)). length) {
        trả về true;
    } khác {
        trả về sai;
    }
}
findAge (23);
findAge (40);
 

Đầu ra:

  true
SAI
 

Sử dụng Simple for Loop to Search for a Element

Chúng ta có thể tìm thấy một phần tử trong một mảng bằng các phương thức cơ bản của javascript, điều kiện if và vòng lặp for . Đoạn mã sau sẽ trả về true nếu phần tử được tìm thấy, còn lại sẽ trả về false. Nếu có nhiều hơn một lần xuất hiện của cùng một phần tử, thì hàm chỉ trả về kết quả phù hợp đầu tiên.

  function findAge (myAge, ageAry) {
    let elementFound = false;
    for (let i = 0; i & lt; ageAry.length; i ++) {
        if (ageAry [i] === myAge) {
            trả về true;
        }
    }
    return elementFound;
}
let srcArray = [21, 43, 23, 1, 34, 12, 8];
findAge (23, srcArray);
findAge (40, srcArray);
findAge (8, srcArray);
findAge (23, srcArray);
 

Đầu ra:

  true
SAI
THÀNH THẬT
THÀNH THẬT
 

Note

  • .indexOf () , .includes () các hàm tìm kiếm một phần tử phù hợp chính xác. Chúng tôi không thể sử dụng nó để tìm kiếm các chuỗi một phần. Nó có nghĩa là cung cấp một phần của một phần tử vì tham số tìm kiếm sẽ không hoạt động.
  • Chúng tôi có thể triển khai tìm kiếm một phần phần tử bằng Array.filter () Array.find () hoạt động vì chúng cho phép chúng tôi xác định tùy chỉnh các tiêu chí tìm kiếm.

Viết cho chúng tôi

Các bài viết về DelftStack được viết bởi những người yêu thích phần mềm như bạn. Nếu bạn cũng muốn đóng góp cho DelftStack bằng cách viết các bài báo trả phí, bạn có thể xem trang viết cho chúng tôi .


Xem thêm những thông tin liên quan đến chủ đề kiểm tra xem mảng có chứa phần tử js không

Mảng

  • Tác giả: F8 Official
  • Ngày đăng: 2020-01-10
  • Đánh giá: 4 ⭐ ( 1280 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Truy cập ngay https://f8.edu.vn và học tại đây để quản lý được tiến độ học và hơn thế nữa!

    hoclaptrinh javascript mienphi
    ----------------------------------------------/-------------
    © Bản quyền thuộc về MyCV.vn
    © Copyright by MyCV.vn ☞ Do not Reup

    Liên hệ: SƠN ĐẶNG
    ► Facebook: https://url.mycv.vn/sondn-fb?ref=yt
    ► Email: sondnf8@gmail.com
    ---------------------------------------
    ► Học lập trình: https://url.mycv.vn/f8?ref=yt
    ► Viết CV xin việc: https://url.mycv.vn/mycv?ref=yt
    ---------------------------------------
    HỌC LẬP TRÌNH MIỄN PHÍ
    ► Khóa Javascript cơ bản: https://url.mycv.vn/js-basic?ref=yt

Kiểm tra phần tử có trong mảng JavaScript (includes,indexOf,lastIndexOf)

  • Tác giả: laptrinhcanban.com
  • Đánh giá: 3 ⭐ ( 3294 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hướng dẫn cách kiểm tra phần tử có trong mảng JavaScript hay không. Bạn sẽ học được 3 cách căn bản để kiểm tra phần tử có tồn tại trong mảng JavaScript hay không sau bài viết này.

10 Array Method Trong Javascript Coder Cần Biết

  • Tác giả: codelearn.io
  • Đánh giá: 3 ⭐ ( 1597 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Javascript đã cung cấp cho chúng ta các method để giúp xử lý dữ liệu trong mảng (array) dễ dàng hơn, hãy cùng tìm hiểu về chúng nhé.

Kiểm tra xem một mảng có chứa bất kỳ phần tử nào của mảng khác trong JavaScript không

  • Tác giả: qastack.vn
  • Đánh giá: 4 ⭐ ( 1558 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Vanilla JS ES2016: const found = arr1.some(r=> arr2.includes(r)) ES6: const found = arr1.some(r=> arr2.indexOf(r) >= 0)…

Hàm indexOf() trong JavaScript

  • Tác giả: hocjavascript.net
  • Đánh giá: 5 ⭐ ( 8501 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Hàm indexOf() trong JavaScript trả về vị trí của một phần tử trong mảng hoặc chuỗi. Nếu phần tử đó xuất hiện nhiều lần, hàm indexOf() sẽ trả về

  • Tác giả: www.homiedev.com
  • Đánh giá: 4 ⭐ ( 6292 lượt đánh giá )
  • Khớp với kết quả tìm kiếm:

Một số hàm xử lý với mảng trong Javascript

  • Tác giả: viblo.asia
  • Đánh giá: 3 ⭐ ( 7440 lượt đánh giá )
  • Khớp với kết quả tìm kiếm: Xin chào mọi người, hôm nay mình sẽ giới thiệu một số hàm xử lý với mảng trong JS, mong mọi người theo dõi

Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình

Xem Thêm  6 phần mềm giả lập iOS tốt nhất chạy ứng dụng trên Windows mượt mà - giả lập định vị trên iphone

By ads_php