Nó trở nên ngắn hơn. Nếu hàm chỉ có một câu lệnh và câu lệnh đó trả về một giá trị, bạn có thể bỏ dấu ngoặc và từ khóa
2Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Hàm mũi tên Giá trị trả về theo mặc định
xin chào = [] => "Xin chào thế giới. “;
Tự mình thử »
Ghi chú. Điều này chỉ hoạt động nếu hàm chỉ có một câu lệnh
Nếu bạn có tham số, bạn chuyển chúng vào trong dấu ngoặc đơn
Thực ra nếu bạn chỉ có 1 tham số thôi thì bỏ ngoặc cũng được
Còn về let numbers = [1, 2, 3, 4, 5];
console.log[numbers.find[e => e % 2 == 0]];
Code language: JavaScript [javascript]
3 thì sao?
let numbers = [1, 2, 3, 4, 5];
console.log[numbers.find[e => e % 2 == 0]];
Việc xử lý của
3 cũng khác trong hàm mũi tên so với hàm thông thườngCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Nói tóm lại, với các chức năng mũi tên, không có ràng buộc nào của
3Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Trong các chức năng thông thường, từ khóa
3 đại diện cho đối tượng được gọi là chức năng, có thể là cửa sổ, tài liệu, nút hoặc bất kỳ thứ gìCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Với các chức năng mũi tên, từ khóa
3 luôn đại diện cho đối tượng đã xác định chức năng mũi tênCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Chúng ta hãy xem hai ví dụ để hiểu sự khác biệt
Cả hai ví dụ đều gọi một phương thức hai lần, lần đầu tiên khi tải trang và một lần nữa khi người dùng nhấp vào nút
Ví dụ đầu tiên sử dụng hàm thông thường và ví dụ thứ hai sử dụng hàm mũi tên
Kết quả cho thấy ví dụ đầu tiên trả về hai đối tượng khác nhau [cửa sổ và nút] và ví dụ thứ hai trả về đối tượng cửa sổ hai lần vì đối tượng cửa sổ là "chủ sở hữu" của hàm
Ví dụ
Với một hàm thông thường,
3 đại diện cho đối tượng gọi hàmCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
// Hàm thông thường.
hello = function[] {
tài liệu. getElementById["bản trình diễn"]. innerHTML += cái này;
}
// Đối tượng cửa sổ gọi hàm.
cửa sổ. addEventListener["tải", xin chào];
// Đối tượng button gọi hàm.
tài liệu. getElementById["btn"]. addEventListener["nhấp", xin chào];
Tự mình thử »
Ví dụ
Với chức năng mũi tên
3 đại diện cho chủ sở hữu của chức năngCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
// Chức năng mũi tên.
xin chào = [] => {
tài liệu. getElementById["bản trình diễn"]. innerHTML += cái này;
}
// Đối tượng cửa sổ gọi hàm.
cửa sổ. addEventListener["tải", xin chào];
// Đối tượng button gọi hàm.
tài liệu. getElementById["btn"]. addEventListener["nhấp", xin chào];
Tự mình thử »
Hãy nhớ những điểm khác biệt này khi bạn làm việc với các hàm. Đôi khi hành vi của các hàm thông thường là những gì bạn muốn, nếu không, hãy sử dụng các hàm mũi tên
Hỗ trợ trình duyệt
Bảng sau đây xác định các phiên bản trình duyệt đầu tiên có hỗ trợ đầy đủ cho Hàm mũi tên trong JavaScript
Tóm lược. trong hướng dẫn này, bạn sẽ học cách sử dụng phương thức JavaScript
0 để tìm kiếm phần tử đầu tiên trong một mảng, đáp ứng một bài kiểm traCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Giới thiệu về phương thức Array find[]
Trong ES5, để tìm một phần tử trong mảng, bạn sử dụng phương thức
1 hoặcCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
2. Tuy nhiên, các phương thức này khá hạn chế vì chúng chỉ trả về chỉ số của phần tử khớp đầu tiên
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Code language: JavaScript [javascript]
ES6 đã giới thiệu một phương thức mới gọi là
0 được thêm vào đối tượngCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
0Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Phương thức
0 trả về phần tử đầu tiên trong một mảng vượt qua hàm kiểm tra. Sau đây là cú pháp của phương thứcCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
0Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Code language: CSS [css]
find[callback[element[, index[, array]]][, thisArg]]
Tranh luận
0 chấp nhận hai đối số. một chức năng gọi lại và một giá trị tùy chọn để sử dụng choCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
4 bên trong chức năngCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
5Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
1] let numbers = [1, 2, 3, 4, 5];
console.log[numbers.find[e => e % 2 == 0]];
Code language: JavaScript [javascript]
5
let numbers = [1, 2, 3, 4, 5];
console.log[numbers.find[e => e % 2 == 0]];
5 là hàm thực thi từng phần tử của mảng. Phải mất ba đối sốCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
8 là phần tử hiện tại
Code language: JavaScript [javascript]let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
9 chỉ mục của phần tử hiện tại
Code language: JavaScript [javascript]let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
0 mảng mà2
0 được gọi
Code language: JavaScript [javascript]let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
2] 2
2
2
2 là đối tượng được sử dụng như
2
4 bên trongCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
5Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Giá trị trả về
0 thực thi hàmCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
5 cho từng phần tử trong mảng cho đến khiCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
5 trả về giá trị trung thực.Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Nếu cuộc gọi lại trả về một giá trị trung thực, thì
0 ngay lập tức trả về phần tử và ngừng tìm kiếm. Nếu không, nó sẽ trả vềCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
50Code language: CSS [css]
find[callback[element[, index[, array]]][, thisArg]]
Nếu muốn tìm chỉ số của phần tử tìm được, bạn có thể sử dụng phương thức
51Code language: CSS [css]
find[callback[element[, index[, array]]][, thisArg]]
Các ví dụ về tìm kiếm JavaScript []
Ví dụ sau sử dụng phương thức
0 để tìm kiếm số chẵn đầu tiên trong một dãy sốCode language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];
đầu ra
________số 8Giả sử rằng chúng ta có một danh sách các đối tượng khách hàng với các thuộc tính
53 vàCode language: CSS [css]
find[callback[element[, index[, array]]][, thisArg]]
54 như sauCode language: CSS [css]
find[callback[element[, index[, array]]][, thisArg]]
5Code language: CSS [css]
find[callback[element[, index[, array]]][, thisArg]]
Đoạn mã sau sử dụng phương pháp
0 để tìm khách hàng đầu tiên có tín dụng lớn hơn 100Code language: JavaScript [javascript]
let numbers = [1, 2, 3, 4, 5]; console.log[numbers.find[e => e % 2 == 0]];