Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm cách nào để kiểm tra xem các phần tử được cung cấp trong một mảng đã vượt qua một điều kiện cụ thể hay chưa trong JavaScript?

hai phương pháp để kiểm tra xem các phần tử được cung cấp của một mảng đã vượt qua bài kiểm tra hay chưa. Chúng là Array.filter () _.filter () phương pháp. Phương thức trước là một phương thức javascript thông thường trong khi phương thức sau là một phương thức từ underscore.js , là một thư viện của javascript.

cú pháp

_.filter( list, conditions);

Phương thức này chấp nhận hai tham số. Một là danh sách trong đó các phần tử sẽ được cung cấp và các điều kiện khác (không có gì ngoài mã).

Ví dụ

Trong ví dụ sau, bội số của ba được hiển thị bằng cách sử dụng _.filter () . Đây là _.filter () phương thức đã nhận hai tham số, một là danh sách và một là các điều kiện.

<html>
<body>
<script type="text/javascript" src=
   "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
</script>
</head>
<body>
<script>
   var arr = [3,4,5,6,9,77,36,42]
   var threeMul = _.filter(arr,
   function(num){
      return num % 3 == 0;
   });
   document.write(threeMul);
</script>
</body>
</html>

Đầu ra

3,6,9,36,42


Array.filter ()

Đây là một phương thức javascript bình thường. Điều này được sử dụng để lọc các giá trị cho dù chúng đã vượt qua một bài kiểm tra được cung cấp hay chưa.

Ví dụ

Trong ví dụ sau, các mức lương lớn hơn một mức lương cụ thể được hiển thị như được hiển thị trong kết quả đầu ra.

<html>
<body>
<p id="filter"></p>
<script>
   var salary = [12000, 13000, 15000, 78000, 43000];
   var specSal = salary.filter(myFunction);
   document.getElementById("filter").innerHTML = specSal;
   function myFunction(value, index, array) {
      return value > 20000;
   }
</script>
</body>
</html>

Đầu ra

78000,43000