array.find() trong Javascript

Hàm find sẽ trả về giá trị của phần tử đầu tiên trong mảng thỏa mãn được điều kiện kiểm tra( được truyền vào như một hàm!).

Hàm find sẽ lần lượt sử dụng các phần tử của mảng để thực hiện hàm kiểm tra cho đến khi có giá trị thỏa mãn và hàm kiểm tra trả về True, khi đó hàm find sẽ trả về giá trị của phần tử thỏa mãn đó và bỏ qua không kiểm tra các phần tử còn lại.

Lưu ý:

  • Hàm find không thực hiện hàm kiểm tra với các phần tử không có giá trị.
  • Hàm find sẽ không thay đổi mảng ban đầu.

Cú pháp

Cú pháp: array.find(function(currentValue, index, arr),thisValue)

Trong đó:

  • currentValue - giá trị của phần tử hiện tại.
  • index -  chỉ số của phần tử hiện tại.
  • arr -  mảng mà phần tử hiện tại thuộc về.
  • thisValue -  tham số không bắt buộc. Nếu được truyền vào thì thisValue sẽ được sử dụng làm giá trị "this:. Nếu không được truyền vào thì giá trị "this" là "undefined".

Cách sử dụng

Ví dụ: Sử dụng hàm find() để tìm kiếm điểm số nhỏ hơn 5 trong mảng các điểm số.

Code RUN
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
	</head>
	<body>
		<h1>Học lập trình miễn phí tại freetuts.net</h1>
		<p>Click vào button kiểm tra học sinh có đủ điểm đỗ không.</p>

		<button onclick="myFunction()">Kiểm tra</button>

		<p id="demo"></p>

		<script>
			var scores = [6, 10, 7, 9, 4];
			document.getElementById("demo").innerHTML = scores;
			function checkAdult(scores) {
			    return scores <= 5;
			}

			function myFunction() {
			    document.getElementById("demo").innerHTML = scores.find(checkAdult);
			}
		</script>
	</body>
</html>

Nguồn: freetuts.net