Phương thức some
Phương thức some kiểm tra các phần tử của mảng
theo một hàm được truyền vào. Hàm này
được truyền dưới dạng tham số của phương thức và được thực thi
cho từng phần tử của mảng.
Phương thức trả về true nếu ít nhất
một phần tử của mảng làm cho hàm được truyền vào
trả về true, ngược lại phương thức
trả về false.
Bạn có thể truyền ba tham số vào hàm. Nếu các tham số này tồn tại (chúng không bắt buộc), thì tham số đầu tiên sẽ tự động nhận giá trị phần tử mảng, tham số thứ hai sẽ nhận số thứ tự của nó trong mảng (chỉ mục), và tham số thứ ba - chính là mảng đó.
Cú pháp
mảng.some(function(phần_tử, chỉ_mục, mảng) {
});
Ví dụ
Hãy kiểm tra xem trong mảng số có ít nhất một số dương không:
let arr = [-1, -2, -3, 4];
let check = arr.some(function(elem) {
if (elem >= 0) {
return true;
} else {
return false;
}
});
console.log(check);
Kết quả thực thi mã:
true
Ví dụ
Hãy kiểm tra xem ít nhất một tích của phần tử
với số thứ tự của nó có lớn hơn hoặc bằng
20 không:
let arr = [1, 2, 3, 4, 5];
let check = arr.some(function(elem, index) {
if (elem * index >= 20) {
return true;
} else {
return false;
}
});
console.log(check);
Kết quả thực thi mã:
true
Ví dụ
Nếu cần, bạn có thể truyền chính mảng đó vào tham số thứ ba:
let check = arr.some(function(elem, index, arr) {
// mảng arr sẽ có sẵn ở đây
});
Xem thêm
-
phương thức
every,
cũng cho phép thực hiện kiểm tra mảng -
phương thức
mapvàforEach,
cho phép áp dụng một hàm cho mỗi phần tử của mảng -
phương thức
reducevàreduceRight,
gộp mảng thành một giá trị