Các chức năng nên được đặt ở đâu trong javascript?
Ví dụ: chúng tôi cần hiển thị một thông báo đẹp mắt khi khách đăng nhập, đăng xuất và có thể ở một nơi khác Show
Hàm là “khối xây dựng” chính của chương trình. Chúng cho phép mã được gọi nhiều lần mà không cần lặp lại Chúng ta đã thấy các ví dụ về hàm dựng sẵn, như 0, 1 và 2. Nhưng chúng ta cũng có thể tạo các chức năng của riêng mìnhKhai báo hàmĐể tạo một hàm chúng ta có thể sử dụng khai báo hàm Nó trông như thế này
Từ khóa 3 đi trước, sau đó đến tên của hàm, sau đó là danh sách các tham số giữa các dấu ngoặc đơn (được phân tách bằng dấu phẩy, để trống trong ví dụ trên, chúng ta sẽ xem các ví dụ sau) và cuối cùng là mã của hàm, cũng được đặt tên
Chức năng mới của chúng tôi có thể được gọi bằng tên của nó. 4Ví dụ
Cuộc gọi 4 thực thi mã của chức năng. Ở đây chúng ta sẽ thấy thông báo hai lầnVí dụ này thể hiện rõ ràng một trong những mục đích chính của hàm. để tránh sao chép mã Nếu chúng tôi cần thay đổi thông báo hoặc cách hiển thị thông báo, chỉ cần sửa đổi mã ở một nơi là đủ. chức năng xuất ra nó Biến cục bộMột biến được khai báo bên trong một hàm chỉ hiển thị bên trong hàm đó Ví dụ
biến bên ngoàiMột chức năng cũng có thể truy cập vào một biến bên ngoài, ví dụ 0Hàm có toàn quyền truy cập vào biến bên ngoài. Nó cũng có thể sửa đổi nó Ví dụ 1Biến bên ngoài chỉ được sử dụng nếu không có biến cục bộ Nếu một biến cùng tên được khai báo bên trong hàm thì nó sẽ che khuất biến bên ngoài. Chẳng hạn, trong mã bên dưới, hàm sử dụng 6 cục bộ. Cái bên ngoài bị bỏ qua 3biến toàn cục Các biến được khai báo bên ngoài bất kỳ chức năng nào, chẳng hạn như bên ngoài 6 trong đoạn mã trên, được gọi là biến toàn cụcCác biến toàn cục có thể nhìn thấy từ bất kỳ chức năng nào (trừ khi bị che khuất bởi người dân địa phương) Đó là một cách thực hành tốt để giảm thiểu việc sử dụng các biến toàn cầu. Mã hiện đại có ít hoặc không có toàn cầu. Hầu hết các biến nằm trong các hàm của chúng. Tuy nhiên, đôi khi, chúng có thể hữu ích để lưu trữ dữ liệu cấp dự án Thông sốChúng ta có thể truyền dữ liệu tùy ý cho các hàm bằng cách sử dụng các tham số Trong ví dụ bên dưới, hàm có hai tham số. 8 và 9 7Khi hàm được gọi ở dòng 00 và 01, các giá trị đã cho được sao chép vào các biến cục bộ 8 và 9. Sau đó, chức năng sử dụng chúngĐây là một ví dụ nữa. chúng ta có một biến 8 và truyền nó cho hàm. Xin lưu ý. chức năng thay đổi 8, nhưng sự thay đổi không được nhìn thấy bên ngoài, bởi vì một chức năng luôn nhận được một bản sao của giá trị 4Khi một giá trị được truyền dưới dạng tham số hàm, nó còn được gọi là đối số Nói cách khác, để đặt các điều khoản này thẳng
Chúng tôi khai báo các hàm liệt kê các tham số của chúng, sau đó gọi chúng là các đối số truyền Trong ví dụ trên, người ta có thể nói. "hàm 06 được khai báo với hai tham số, sau đó được gọi với hai đối số. 8 và 08"Giá trị mặc địnhNếu một hàm được gọi, nhưng không cung cấp đối số, thì giá trị tương ứng sẽ trở thành 09Chẳng hạn, hàm 10 đã nói ở trên có thể được gọi bằng một đối số duy nhất 0Đó không phải là lỗi. Một cuộc gọi như vậy sẽ xuất ra 11. Vì giá trị cho 9 không được chuyển, nó sẽ trở thành 09Chúng ta có thể chỉ định cái gọi là giá trị “mặc định” (để sử dụng nếu bị bỏ qua) cho một tham số trong khai báo hàm, sử dụng 14 0Lúc này nếu không truyền tham số 9 thì nó sẽ nhận giá trị là 16Giá trị mặc định cũng nhảy vào nếu tham số tồn tại, nhưng hoàn toàn bằng 09, như thế này 1Ở đây 16 là một chuỗi, nhưng nó có thể là một biểu thức phức tạp hơn, chỉ được đánh giá và gán nếu thiếu tham số. Vì vậy, điều này cũng có thể 2Đánh giá các thông số mặc định Trong JavaScript, một tham số mặc định được đánh giá mỗi khi hàm được gọi mà không có tham số tương ứng Trong ví dụ trên, 19 hoàn toàn không được gọi nếu tham số 9 được cung cấpMặt khác, nó được gọi độc lập mỗi khi thiếu 9Tham số mặc định trong mã JavaScript cũ Vài năm trước, JavaScript không hỗ trợ cú pháp cho các tham số mặc định. Vì vậy, mọi người đã sử dụng những cách khác để chỉ định chúng Ngày nay, chúng ta có thể bắt gặp chúng trong các chữ viết cũ Ví dụ: kiểm tra rõ ràng cho 09 3…Hoặc sử dụng toán tử 33 4Thông số mặc định thay thếĐôi khi, việc gán các giá trị mặc định cho các tham số ở giai đoạn sau sau khi khai báo hàm là hợp lý Chúng ta có thể kiểm tra xem tham số có được truyền trong quá trình thực thi hàm hay không bằng cách so sánh nó với 09 5…Hoặc chúng ta có thể sử dụng toán tử 33 6Các công cụ JavaScript hiện đại hỗ trợ toán tử kết hợp nullish 36, sẽ tốt hơn khi hầu hết các giá trị giả, chẳng hạn như 37, nên được coi là "bình thường" 7Trả về một giá trịKết quả là một hàm có thể trả lại một giá trị vào mã gọi Ví dụ đơn giản nhất sẽ là một hàm tính tổng hai giá trị 8Chỉ thị 38 có thể ở bất kỳ vị trí nào của chức năng. Khi thực thi đạt đến mức đó, hàm sẽ dừng và giá trị được trả về mã gọi (được gán cho 39 ở trên)Có thể có nhiều lần xuất hiện của 38 trong một chức năng. Ví dụ 9Có thể sử dụng 38 mà không cần giá trị. Điều đó khiến chức năng thoát ngay lập tứcVí dụ 0Trong đoạn mã trên, nếu 72 trả về 73, thì 74 sẽ không tiếp tục với 75Một hàm có giá trị rỗng Nếu một hàm không trả về giá trị, nó giống như khi nó trả về 09 1Một 38 trống cũng giống như 40 2Không bao giờ thêm một dòng mới giữa Đối với một biểu thức dài trong 38, có thể bạn nên đặt nó trên một dòng riêng, như thế này 3Điều đó không hiệu quả, bởi vì JavaScript giả định một dấu chấm phẩy sau 38. Điều đó sẽ hoạt động giống như 4Vì vậy, nó thực sự trở thành một khoản hoàn trả trống Nếu chúng ta muốn biểu thức được trả về ngắt dòng trên nhiều dòng, chúng ta nên bắt đầu nó ở cùng một dòng với 38. Hoặc ít nhất là đặt dấu ngoặc đơn mở ở đó như sau 5Và nó sẽ hoạt động đúng như chúng ta mong đợi Đặt tên cho một chức năngChức năng là hành động. Vì vậy, tên của họ thường là một động từ. Nó phải ngắn gọn, chính xác nhất có thể và mô tả những gì chức năng làm, để ai đó đọc mã sẽ nhận được dấu hiệu về những gì chức năng làm Đó là một thực tế phổ biến để bắt đầu một chức năng với tiền tố bằng lời mô tả một cách mơ hồ hành động. Phải có một thỏa thuận trong nhóm về ý nghĩa của các tiền tố Chẳng hạn, các hàm bắt đầu bằng 45 thường hiển thị nội dung nào đóHàm bắt đầu bằng…
Ví dụ về những cái tên như vậy 6Với các tiền tố sẵn có, chỉ cần nhìn lướt qua tên hàm là bạn có thể hiểu loại công việc của nó và loại giá trị mà nó trả về Một chức năng – một hành động Một chức năng nên thực hiện chính xác những gì được đề xuất bởi tên của nó, không hơn Hai hành động độc lập thường xứng đáng với hai hàm, ngay cả khi chúng thường được gọi cùng nhau (trong trường hợp đó, chúng ta có thể tạo hàm thứ 3 gọi hai hàm đó) Một vài ví dụ về việc phá vỡ quy tắc này
Những ví dụ này giả định ý nghĩa phổ biến của tiền tố. Bạn và nhóm của bạn có thể tự do đồng ý về các ý nghĩa khác, nhưng thường thì chúng không khác nhau nhiều. Trong bất kỳ trường hợp nào, bạn nên hiểu rõ tiền tố nghĩa là gì, chức năng tiền tố có thể và không thể làm gì. Tất cả các hàm có tiền tố giống nhau phải tuân theo các quy tắc. Và nhóm nên chia sẻ kiến thức Tên chức năng siêu ngắn Các chức năng được sử dụng rất thường xuyên đôi khi có tên siêu ngắn Ví dụ: khung công tác jQuery định nghĩa một hàm với 05. Thư viện Lodash có chức năng cốt lõi tên là 06Đây là những trường hợp ngoại lệ. Nói chung tên chức năng phải ngắn gọn và mô tả Chức năng == Nhận xétCác chức năng phải ngắn gọn và thực hiện chính xác một việc. Nếu thứ đó lớn, có lẽ nên chia chức năng thành một vài chức năng nhỏ hơn. Đôi khi tuân theo quy tắc này có thể không dễ dàng, nhưng đó chắc chắn là một điều tốt Một chức năng riêng biệt không chỉ dễ kiểm tra và gỡ lỗi hơn – chính sự tồn tại của nó là một nhận xét tuyệt vời Chẳng hạn, so sánh hai hàm 07 bên dưới. Mỗi cái xuất ra các số nguyên tố lên đến 08Biến thể đầu tiên sử dụng nhãn 7Biến thể thứ hai sử dụng hàm bổ sung 09 để kiểm tra tính nguyên tố 8Biến thể thứ hai dễ hiểu hơn phải không? . Đôi khi mọi người coi mã như vậy là tự mô tả Vì vậy, các chức năng có thể được tạo ngay cả khi chúng tôi không có ý định sử dụng lại chúng. Họ cấu trúc mã và làm cho mã có thể đọc được Bản tóm tắtMột khai báo chức năng trông như thế này 9
Để làm cho mã rõ ràng và dễ hiểu, bạn nên sử dụng chủ yếu các biến cục bộ và tham số trong hàm, không phải các biến bên ngoài Việc hiểu một hàm nhận tham số, làm việc với chúng và trả về kết quả luôn dễ dàng hơn một hàm không nhận tham số, nhưng sửa đổi các biến bên ngoài như một tác dụng phụ đặt tên hàm
Hàm là khối xây dựng chính của tập lệnh. Bây giờ chúng tôi đã đề cập đến những điều cơ bản, vì vậy chúng tôi thực sự có thể bắt đầu tạo và sử dụng chúng. Nhưng đó mới chỉ là khởi đầu của con đường. Chúng tôi sẽ quay lại với chúng nhiều lần, đi sâu hơn vào các tính năng nâng cao của chúng Các chức năng nên đi đâu trong JavaScript?Một hàm chứa một số mã sẽ được thực thi bởi một sự kiện hoặc một lời gọi hàm đó. Hàm là một tập hợp các câu lệnh. Bạn có thể sử dụng lại các chức năng trong cùng một tập lệnh hoặc trong các tài liệu khác. Bạn xác định các hàm ở đầu tệp (trong phần đầu) và gọi chúng sau này trong tài liệu .
Các chức năng nên được khai báo ở đâu?Khai báo hàm là bắt buộc khi bạn xác định một hàm trong một tệp nguồn và bạn gọi hàm đó trong một tệp khác. Trong trường hợp đó, bạn nên khai báo hàm ở đầu tệp gọi hàm .
Đâu là nơi chính xác để chèn JavaScript?JavaScript trong or
. Tập lệnh có thể được đặt trong
Cách tốt nhất để viết các hàm trong JavaScript là gì?Chúng ta bắt đầu khai báo bằng từ khóa “hàm”. Sau đó, chúng tôi viết tên hàm và sau đó tham số. . Khai báo hàm Biểu thức hàm Chức năng mũi tên |