Phương thức find[]
trả về phần tử đầu tiên trong mảng được cung cấp thỏa mãn chức năng thử nghiệm được cung cấp. Nếu không có giá trị thỏa mãn chức năng kiểm tra, undefined
sẽ được trả về.Thử nó
findIndex[]
.index of the found element in the array, use findIndex[]
.indexOf[]
. [Nó tương tự như findIndex[]
, nhưng kiểm tra từng phần tử cho sự bình đẳng với giá trị thay vì sử dụng hàm thử nghiệm.]index of a value, use
indexOf[]
. [It's similar to findIndex[]
, but checks each element for equality with the value instead of using a testing function.]
1. Một lần nữa, nó kiểm tra từng phần tử cho sự bình đẳng với giá trị thay vì sử dụng hàm thử nghiệm.exists in an array, use
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
1. Again, it checks each element for equality with the value instead of using a testing function. const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
2.const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
Cú pháp
// Arrow function
find[[element] => { /* … */ }]
find[[element, index] => { /* … */ }]
find[[element, index, array] => { /* … */ }]
// Callback function
find[callbackFn]
find[callbackFn, thisArg]
// Inline callback function
find[function [element] { /* … */ }]
find[function [element, index] { /* … */ }]
find[function [element, index, array] { /* … */ }]
find[function [element, index, array] { /* … */ }, thisArg]
Thông số
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3Một hàm để thực thi cho mỗi phần tử trong mảng. Nó sẽ trả về một giá trị sự thật để chỉ ra một yếu tố phù hợp đã được tìm thấy.
Hàm được gọi với các đối số sau:
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
4Phần tử hiện tại được xử lý trong mảng.
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
5Chỉ số của phần tử hiện tại được xử lý trong mảng.
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
6Mảng find[]
đã được kêu gọi.
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
8 Tùy chọnOptionalGiá trị để sử dụng là
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
9 khi thực hiện const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3. Xem phương pháp lặp.Giá trị trả về
Phần tử đầu tiên trong mảng thỏa mãn chức năng thử nghiệm được cung cấp. Nếu không, undefined
được trả lại.
Sự mô tả
Phương pháp find[]
là một phương pháp lặp. Nó gọi hàm
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3 được cung cấp một lần cho mỗi phần tử theo một mảng theo thứ tự chỉ số tăng dần, cho đến khi const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3 trả về giá trị sự thật. find[]
sau đó trả về phần tử đó và dừng lặp qua mảng. Nếu const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3 không bao giờ trả về giá trị sự thật, find[]
trả về undefined
.const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3 được gọi cho mọi chỉ mục của mảng, không chỉ các chỉ số có giá trị được gán. Các khe trống trong các mảng thưa thớt hoạt động giống như undefined
.find[]
không làm biến đổi mảng mà nó được gọi, nhưng hàm được cung cấp như
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3 có thể. Tuy nhiên, lưu ý rằng độ dài của mảng được lưu trước khi gọi đầu tiên của const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
3. Vì vậy:
3 sẽ không truy cập bất kỳ yếu tố nào được thêm vào ngoài độ dài ban đầu của mảng khi cuộc gọi đếnconst inventory = [ { name: "apples", quantity: 2 }, { name: "bananas", quantity: 0 }, { name: "cherries", quantity: 5 }, ]; function isCherries[fruit] { return fruit.name === "cherries"; } console.log[inventory.find[isCherries]]; // { name: 'cherries', quantity: 5 }
find[]
bắt đầu.- Các thay đổi đối với các chỉ mục đã được truy cập không khiến
3 được gọi lại trên chúng.const inventory = [ { name: "apples", quantity: 2 }, { name: "bananas", quantity: 0 }, { name: "cherries", quantity: 5 }, ]; function isCherries[fruit] { return fruit.name === "cherries"; } console.log[inventory.find[isCherries]]; // { name: 'cherries', quantity: 5 }
- Nếu một phần tử hiện có, chưa được liên kết của mảng được thay đổi bởi
3, giá trị của nó được chuyển choconst inventory = [ { name: "apples", quantity: 2 }, { name: "bananas", quantity: 0 }, { name: "cherries", quantity: 5 }, ]; function isCherries[fruit] { return fruit.name === "cherries"; } console.log[inventory.find[isCherries]]; // { name: 'cherries', quantity: 5 }
3 sẽ là giá trị tại thời điểm phần tử đó được truy cập. Các yếu tố bị xóa được truy cập như thể chúng làconst inventory = [ { name: "apples", quantity: 2 }, { name: "bananas", quantity: 0 }, { name: "cherries", quantity: 5 }, ]; function isCherries[fruit] { return fruit.name === "cherries"; } console.log[inventory.find[isCherries]]; // { name: 'cherries', quantity: 5 }
undefined
.
CẢNH BÁO: Sửa đổi đồng thời của loại được mô tả ở trên thường xuyên dẫn đến mã khó hiểu và thường được tránh [ngoại trừ trong các trường hợp đặc biệt]. Concurrent modifications of the kind described above frequently lead to hard-to-understand code and are generally to be avoided [except in special cases].
Phương pháp find[]
là chung chung. Nó chỉ mong đợi giá trị
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
9 có thuộc tính // Declare array with no elements at indexes 2, 3, and 4
const array = [0, 1, , , , 5, 6];
// Shows all indexes, not just those with assigned values
array.find[[value, index] => {
console.log["Visited index ", index, " with value ", value];
}];
// Visited index 0 with value 0
// Visited index 1 with value 1
// Visited index 2 with value undefined
// Visited index 3 with value undefined
// Visited index 4 with value undefined
// Visited index 5 with value 5
// Visited index 6 with value 6
// Shows all indexes, including deleted
array.find[[value, index] => {
// Delete element 5 on first iteration
if [index === 0] {
console.log["Deleting array[5] with value ", array[5]];
delete array[5];
}
// Element 5 is still visited even though deleted
console.log["Visited index ", index, " with value ", value];
}];
// Deleting array[5] with value 5
// Visited index 0 with value 0
// Visited index 1 with value 1
// Visited index 2 with value undefined
// Visited index 3 with value undefined
// Visited index 4 with value undefined
// Visited index 5 with value undefined
// Visited index 6 with value 6
2 và các thuộc tính được khóa.Ví dụ
Tìm một đối tượng trong một mảng bởi một trong các thuộc tính của nó
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
Sử dụng chức năng mũi tên và phá hủy
const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
const result = inventory.find[[{ name }] => name === "cherries"];
console.log[result]; // { name: 'cherries', quantity: 5 }
Tìm một số nguyên tố trong một mảng
Ví dụ sau tìm thấy một phần tử trong mảng là số nguyên tố [hoặc trả về undefined
nếu không có số nguyên tố]:
function isPrime[element, index, array] {
let start = 2;
while [start {
console.log["Visited index ", index, " with value ", value];
}];
// Visited index 0 with value 0
// Visited index 1 with value 1
// Visited index 2 with value undefined
// Visited index 3 with value undefined
// Visited index 4 with value undefined
// Visited index 5 with value 5
// Visited index 6 with value 6
// Shows all indexes, including deleted
array.find[[value, index] => {
// Delete element 5 on first iteration
if [index === 0] {
console.log["Deleting array[5] with value ", array[5]];
delete array[5];
}
// Element 5 is still visited even though deleted
console.log["Visited index ", index, " with value ", value];
}];
// Deleting array[5] with value 5
// Visited index 0 with value 0
// Visited index 1 with value 1
// Visited index 2 with value undefined
// Visited index 3 with value undefined
// Visited index 4 with value undefined
// Visited index 5 with value undefined
// Visited index 6 with value 6
Gọi Find [] trên các đối tượng không phải là
Phương thức find[]
đọc thuộc tính
// Declare array with no elements at indexes 2, 3, and 4
const array = [0, 1, , , , 5, 6];
// Shows all indexes, not just those with assigned values
array.find[[value, index] => {
console.log["Visited index ", index, " with value ", value];
}];
// Visited index 0 with value 0
// Visited index 1 with value 1
// Visited index 2 with value undefined
// Visited index 3 with value undefined
// Visited index 4 with value undefined
// Visited index 5 with value 5
// Visited index 6 with value 6
// Shows all indexes, including deleted
array.find[[value, index] => {
// Delete element 5 on first iteration
if [index === 0] {
console.log["Deleting array[5] with value ", array[5]];
delete array[5];
}
// Element 5 is still visited even though deleted
console.log["Visited index ", index, " with value ", value];
}];
// Deleting array[5] with value 5
// Visited index 0 with value 0
// Visited index 1 with value 1
// Visited index 2 with value undefined
// Visited index 3 with value undefined
// Visited index 4 with value undefined
// Visited index 5 with value undefined
// Visited index 6 with value 6
2 của const inventory = [
{ name: "apples", quantity: 2 },
{ name: "bananas", quantity: 0 },
{ name: "cherries", quantity: 5 },
];
function isCherries[fruit] {
return fruit.name === "cherries";
}
console.log[inventory.find[isCherries]];
// { name: 'cherries', quantity: 5 }
9 và sau đó truy cập vào từng chỉ mục số nguyên.const arrayLike = {
length: 3,
0: 2,
1: 7.3,
2: 4,
};
console.log[
Array.prototype.find.call[arrayLike, [x] => !Number.isInteger[x]],
]; // 7.3
Thông số kỹ thuật
Thông số kỹ thuật ngôn ngữ Ecmascript # sec-array.prototype.find # sec-array.prototype.find |
Tính tương thích của trình duyệt web
Bảng BCD chỉ tải trong trình duyệt