Bài viết được sự cho phép của tác giả Lưu Bình An
Khai báo tường minh
Cách khai báo function “vở lòng” mà ai cũng phải biết, sau từ khóa function
là tên function chúng ta muốn khai báo
function foo() {
console.log(‘vui lap trinh’)
}
Gán function vào một biến
Chúng ta khai báo một biến, gán giá trị của biến này là một function
const foo = function () {
console.log(‘vui lap trinh’)
}
Với cách này, lưu ý là không dùng function trước khi khai báo, giống như chúng ta không thể dùng một biến mà chưa được khai báo vậy.
foo(); // Uncaught ReferenceError: foo is not defined
const foo = function() {
console.log(‘vui lap trinh’)
}
Arrow function
Khai báo function bằng dấu =>
mũi tên, bên trái là params của function, bên phải là phần ruột function
() => console.log(‘vui lap trinh’)
// hoặc bỏ luôn ngoặc kép
[‘An’, ‘luckyluu’, ‘vui’, ‘laptrinh’]
.filter(name => name.length > 5)
.map(name => name.toLowerCase())
Lưu ý cho arrow function, sẽ không có
- object đặc biệt
arguments
, các function khác sẽ có cái object tên làarguments
chứa các tham số truyền vào cho function đó - Ko có gọi
new (() => {})
- Không có
this
,super
,new.target
constructor
Ko được khuyến khích sử dụng, đọc cho vui
const myStrangeFunc = new Function("a", "console.log(a + ' with Functions')");
myStrangeFunc("Fun"); // logs --> "Fun with Functions"
3 thằng còn lại, cũng không phổ biến, chưa thấy giá trị sử dụng
- generator function expression
- generator function declaration
-
GeneratorFunction constructor
Nếu có đam mê bạn có thể tìm hiểu thêm
Bài viết gốc được đăng tải tại vuilaptrinh.com
Có thể bạn quan tâm:
- Functional Programming là gì? Tại sao nên sử dụng
- 7 lí do để loại bỏ Functional Components của React
- Top 5 câu hỏi phỏng vấn JavaScript Developer nào cũng nên biết
Xem thêm các việc làm Developer hấp dẫn tại TopDev