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
Initializing...