Gọi function trong JavaScript
Một hàm JavaScript được khai báo với từ khóa function, theo sau là name, theo sau là 0 hoặc nhiều tham số được khai báo bên trong (). Tên hàm có thể chứa các ký tự chữ cái, chữ số, dấu gạch dưới, và ký tự dô la (giống như quy tắc đặt tên biến). Giả sử bạn cần tạo một chương trình để tạo một hình tròn và tính chu vi của nó. Bạn có thể tạo hai hàm để giải quyết vấn đề này:
Khi sử dụng function, nó giúp chúng ta chia một vấn đề phức tạp thành các phần nhỏ hơn giúp chương trình dễ hiểu và đặc biệt là có thể sử dụng lại (reusable). JavaScript hay các ngôn ngữ lập trình khác cũng có một lượng lớn các hàm có sẵn (Built-in Functions). Ví dụ: Trong bài viết này này, chúng ta cùng tìm hiểu về các hàm do chúng ta định nghĩa. Khai báo hàmCú pháp để khai báo một hàm như sau:
Ví dụ: Gọi hàmỞ ví dụ trên, chúng ta đã khai báo một hàm có tên là 1. Để sử dụng hàm đó, chúng ta cần gọi hay làm cho nó chạy.Chúng ta sẽ gọi hàm 2 ở trên bằng cách sử dụng 3 với tên hàm để gọi hàm:Ví dụ:Sau khi gọi hàm 4 chúng ta sẽ được kết quả như sau:
Function ParametersMột hàm cũng có thể được khai báo với các tham số (parameters). Tham số là giá trị được truyền khi khai báo một hàm. Ví dụ như bạn đến ngân hàng vào đưa các thông tin cá nhân của mình (parameters) để yêu cầu ngân hàng tạo cho bạn một thẻ ngân hàng. Cú pháp: Trong đó: 5 là các tham số mà các bạn muốn truyền vào hàm.Ví dụ:Ở ví dụ trên mình có tạo một hàm 4 để hiển thị tên. Tuy nhiên chúng ta chỉ có thể hiển thị một tên duy nhất mỗi khi bạn gọi hàm. Chúng ta có thể viết lại hàm một chút để viết một hàm mà hiển thị được tên theo ý muốn nhé ^^.Ta nhập thử tên theo ý mình nhé:
Thử nhập tên khác xem có tái sử dụng hàm được không 😃:
Trong chương trình trên, hàm 4 được khai báo với một tham số name. Người dùng được nhắc nhập tên và giá trị sau khi nhập lưu vào biến 8. Sau đó, khi ta gọi hàm, một đối số được truyền vào hàm là 8.
Ví dụ:Giờ ta sẽ thử tính tổng hai số với tham số là 2 số tùy chọn nhé. Kết quả chúng ta được:
Trong chương trình trên, hàm 0 dùng để tính tổng của hai số.
Hàm có tham số mặc địnhChúng ta có thể đặt mặc định một giá trị cho tham số nếu muốn ^^. Kết quả:
Khi gọi hàm với tham số mặc định, như ví dụ trên thì 1 không cần truyền đối số thứ hai (mình để mặc định là 5) thì JavaScript tự biết 4 là 5. Ở 2 chúng ta truyền -5 vào đối số thứ hai và JavaScript sẽ sử dụng -5 thay vì giá trị mặc định để tính toán ^^.Function ReturnCâu lệnh 7 có thể được sử dụng để trả về giá trị cho một lời gọi hàm. Mình lấy lại ví dụ về thẻ ngân hàng, bạn đến và đưa thông tin cá nhân (parameter) để làm thẻ tại ngân hàng, ngân hàng chấp nhận thông tin của bạn và sau đó thẻ ngân hàng được làm và đưa cho bạn (return).Câu lệnh 7 có nghĩa là hàm đã kết thúc. Bất kỳ đoạn code nào sau 7 đều không được thực thi.Nếu không có gì được 7, hàm sẽ trả về một giá trị 1.Ví dụ:Chúng ta xem kết quả ở ví dụ trên: Trong chương trình trên, kết quả phép tính tổng được trả về bởi hàm sử dụng câu lệnh 7. Và giá trị đó được lưu trữ trong biến 3.Giả sử chúng ta không sử dụng lệnh return thì kết quả như sau: Kết quả chúng ta được: Tổng hai số là undefined 😣. Lý do là chúng ta không return về kết quả tính tổng. Do đó function sẽ mặc định 4.Qua các ví dụ trên chúng ta có thể thấy được lợi ích khi sử dụng hàm như sau ^^.
Function ExpressionsTrong Javascript, các hàm cũng có thể được định nghĩa dưới dạng các biểu thức (expressions). Ví dụ: Trong chương trình trên, biến 8 được sử dụng để lưu khai báo hàm. Ở đây hàm được coi như một biểu thức. Và hàm được gọi bằng cách sử dụng tên biến.Hàm trên chúng ta không đặt tên cho nó, hàm này được gọi là hàm ẩn danh (anonymous function). Trong ES2015, các biểu thức trên còn được viết dưới dạng các arrow functions hay "hàm mũi tên". chúng ta sẽ tìm hiểu về chúng trong các bài viết sau 😄😄😄. |