Giá trị trả về của hàm gọi javascript
Để trả về một giá trị từ hàm JavaScript, hãy sử dụng câu lệnh return trong JavaScript. Bạn cần chạy đoạn mã sau để tìm hiểu cách trả về một giá trị - Show
Ví dụ
Mặc dù đơn giản nhưng câu lệnh return trong JavaScript có thể giúp chúng ta cải thiện khả năng đọc mã của mình và làm cho mã ít phức tạp hơn 2 tháng 3 năm 2022 • 7 phút đọc
Bài đăng này miễn phí cho tất cả mọi người đọc nhờ vào sự đầu tư mà những người đăng ký Blog Mindsers đã thực hiện trong ấn phẩm độc lập của chúng tôi. Nếu công việc này có ý nghĩa với bạn, tôi mời bạn trở thành người đăng ký ngay hôm nay Để kết thúc một chức năng, JavaScript sử dụng câu lệnh 5. Câu lệnh 5 rất đơn giản. Đó là một trong những điều đầu tiên bạn sẽ học trong một khóa học mã hóaNhưng bạn không nên đánh giá thấp khả năng của nó trong việc giúp bạn viết mã sạch hơn và hoạt động hiệu quả hơn (và ngược lại khi bạn không nắm vững nó đủ tốt) Tôi đang sử dụng mã JavaScript để minh họa quan điểm của mình trong bài đăng này, nhưng nó cũng áp dụng cho các ngôn ngữ lập trình khác Tóm lượcCâu lệnh 5 hoạt động như thế nào?
Sử dụng tốt hơn câu lệnh return
Câu lệnh function prepareObject(obj) { obj.connect({ // ... }) obj.use({ // ... }) return undefined }5 hoạt động như thế nào?Chúng tôi sử dụng các chức năng để nhóm các câu lệnh lại với nhau theo ngữ cảnh. Nó có nghĩa là chúng phục vụ cùng một mục đích, làm cùng một nhiệm vụ Quy tắc đầu tiên chúng ta sẽ thử và làm theo. một chức năng = một trách nhiệm. Không bao giờ có nhiều hơn một trách nhiệm. Nó sẽ làm cho mã của bạn tốt hơn rất nhiều
Hàm 4 thêm 1 vào giá trị chứa trong biến 5. Tôi giải thích chi tiết về các biến JavaScript trong một bài đăng khác, nếu bạn chưa cảm thấy thoải mái với chúng, tôi thực sự khuyến khích bạn đọc nóCâu lệnh return cho phép chúng ta trả về kết quả của phép cộng theo cách này. 6Nói cách khác, câu lệnh 7 cho phép chúng ta chỉ rõ cho trình thông dịch JavaScript hàm này sẽ trả về giá trị nào. Trong ví dụ của chúng tôi, chúng tôi sử dụng hai biến. Chúng tôi không muốn trả lại 5, chỉ có 9Còn những hàm không có câu lệnh trả về thì sao?Những người trong số các bạn, giống như tôi, có các lớp thuật toán có thể nhớ điều này. một chức năng phải luôn trả về một cái gì đó. Đó là một quy tắc cơ bản. JavaScript tuân theo quy tắc này, các hàm luôn trả về một cái gì đó. Trong trường hợp bạn không muốn trả về một giá trị, thì có một thứ khác tồn tại. Người ta gọi đó là thủ tục Vấn đề là. Không có thủ tục nào trong JavaScript Để giải quyết vấn đề này, JavaScript cho phép chúng tôi trả về giá trị “không xác định”. Nó không được xác định. Chúng tôi không biết giá trị là gì, vì vậy chúng tôi có thể nói nó trống rỗng
Bằng cách này, bạn có thể sử dụng các hàm như khi sử dụng các thủ tục, bạn tập hợp các câu lệnh có thể tái sử dụng mà không trả về kết quả/giá trị đã xác định Hàm 00 chạy các câu lệnh của nó và ở phần cuối, chúng tôi nói rằng hàm trả về giá trị 01. Đối với chúng tôi, điều đó có nghĩa là chúng tôi không trả lại gì, nhưng trình thông dịch rất vui vì dù sao thì bạn cũng trả về một giá trịNếu thử chạy hàm 00, bạn sẽ thấy hàm trả về giá trị 01Tuy nhiên, có một số cách để làm cho mã đơn giản hơn. Đầu tiên, để trống giá trị như thế này 0Bởi vì "không có gì" được trả về, trình thông dịch JavaScript hiểu rằng bạn muốn trả về giá trị 01 và tự động thực hiện điều đóBạn cũng có thể bỏ qua câu lệnh hoàn toàn, như thế này 6Nếu bạn đang nghĩ đó là một thủ tục, tôi hiểu tại sao, nhưng nó đã sai. Bạn thử chạy hàm 00 sẽ thấy nó trả về giá trị 01Câu lệnh return là câu lệnh “chặn”Việc 5 là một câu lệnh cổ điển cho phép chúng ta đặt nó ở bất kỳ đâu trong mã của một hàm 9Mã trước đó là hợp lệ. Điều duy nhất bạn phải nhớ ở đây là 5 là một câu lệnh "chặn" trong phạm vi của hàm chaĐiều đó có nghĩa là nó chỉ ra sự dừng lại của chức năng mà nó là. Điều quan trọng là phải hiểu vì điều đó có nghĩa là mã nằm sau câu lệnh 5 sẽ không bao giờ được thực thiMã nằm sau câu lệnh 5 là cái mà chúng tôi gọi là “mã chết”Trên thực tế, câu lệnh 5 có nghĩa đen là. “chức năng này đã chạy đúng cách, đây là kết quả bạn có thể hiển thị cho ngữ cảnh gốc. Không cần đọc thêm. ”Sử dụng tốt hơn câu lệnh function prepareObject(obj) { obj.connect({ // ... }) obj.use({ // ... }) return undefined }5Nếu bạn đã tự hỏi tại sao chúng tôi lại sử dụng 63 thay vì bỏ qua câu lệnh, hoặc nếu bạn thắc mắc tại sao chúng tôi lại viết mã sau một 5, thì phần này của bài đăng là dành cho bạnKhi bạn hiểu hai ý tưởng này, bạn có thể sử dụng câu lệnh 5 tốt hơn. Việc sử dụng tốt 5 giúp mã dễ đọc hơnRa khỏi chức năng càng sớm càng tốtKhi chúng ta đọc mã, dù là của chúng ta hay của người khác, càng nhiều dữ liệu, bộ não của chúng ta càng khó hiểu nó. Các bước nhảy giữa các ngữ cảnh thực thi là một phần của dữ liệu cần được xem xét và mỗi chức năng là một ngữ cảnh thực thi mới Điều này đang được nói, chúng tôi không muốn sử dụng ít chức năng hơn vì có nhiều ưu điểm hơn nhược điểm (khả năng sử dụng lại, cấu trúc mã, v.v.) Một cách để giảm độ phức tạp của mã là giảm số lượng dữ liệu cần xem xét. Câu lệnh 5 có thể giúp chúng ta làm điều đó. Hãy xem một ví dụ 1Hàm này được sử dụng để báo cho hàm JavaScript 68 biết cách sắp xếp một mảng. Nó được sử dụng như thế này. 69Hãy đọc chức năng để hiểu. Hãy xem bộ não của chúng ta làm gì khi chúng ta gỡ lỗi để minh họa quan điểm của mình. 90 bằng 91 và 92 bằng 93
Chúng tôi đã phải đọc (và hiểu) nhiều mã hơn mức cần thiết để đảm bảo rằng chúng tôi hiểu hàm này làm gì. Điểm 3 và 4 ở trên không cần thiết nhưng chúng ta vẫn phải ghi nhớ chúng. Chúng tôi cũng phải nhớ những gì đã xảy ra trước các bước này để biết những gì cần trả lại Bây giờ, hãy cố gắng viết lại mã của ____218 để mã này có thể được xuất bản càng sớm càng tốt, nhờ vào các đặc quyền của 5. Sau đó, chúng ta sẽ thực hiện bài tập tương tự để so sánh độ phức tạp của mã 2Chức năng mới này thực hiện chính xác điều tương tự. Nó có cùng chữ ký với chức năng đầu tiên. Bây giờ chúng ta thử đọc nhé (xin nhắc lại, 90 bằng 91 và 92 bằng 93)
Đây là cách câu lệnh 5 bị chặn và nó ngừng thực thi chức năng, trong trường hợp cụ thể của chúng tôi, phần còn lại của mã là "chết". Không có điểm nào trong việc đọc nó. Chúng ta không cần hiểu phần còn lại của hàm để hiểu nó làm gì trong trường hợp của chúng taCó rất ít thông số cần tính đến cho bộ não của chúng ta trong quá trình đọc. Đó là cách ít phức tạp hơn. Nó khiến tôi nghĩ về_______427 với Swift Và nó đúng trong hầu hết mọi trường hợp. Cố gắng làm bài tập cho 28, ngay cả khi đó là điều kiện thử nghiệm cuối cùng, chức năng thứ hai ít phức tạp hơnLàm cho câu lệnh function prepareObject(obj) { obj.connect({ // ... }) obj.use({ // ... }) return undefined }2 hữu ích hơnMột cách khác để mã của 18 tốt hơn là sử dụng các từ khóa 2 và 42 4Chúng tôi đang bắt chước hành vi của giải pháp với 5 vì các điều kiện tiếp theo không được thực thi ngay khi tìm thấy điều kiện tương ứngTuy nhiên, giải pháp này không phù hợp vì tôi nghĩ rằng nó vẫn còn quá tải và cần tập trung hơn so với giải pháp hoàn trả mà chúng tôi đã đề cập ở trên Một số bỏ qua vấn đề này bằng cách sử dụng 5. Nhưng họ quên mục đích của việc sử dụng 2 7Trong trường hợp cụ thể này, bạn phải chọn. hoặc là 2, hoặc là 5. Việc sử dụng 5 hủy bỏ ưu điểm của việc sử dụng 2 và nó cũng làm phức tạp mã. Mã này không có mục đích nào khác ngoài việc cho thấy rằng người đã viết không thực sự hiểu được sự tinh tế của câu lệnh 2 và câu lệnh 5. đừng làm thếBằng cách chỉ sử dụng 5 trong chức năng này, bạn xóa một vài từ. Nhưng quan trọng hơn, bạn xóa một phạm vi đầy đủ (trong 2 trước) và bạn xóa một mức thụt đầu dòng, như chúng ta đã thấy trước đây, giúp làm cho mã của bạn rõ ràng hơn và ít phức tạp hơnCá nhân tôi hiếm khi sử dụng 2 nữa trong mã của mình vì trong hầu hết các trường hợp, tôi có thể viết một hàm dễ đọc và dễ hiểu hơn bằng cách sử dụng riêng 5Đừng bắt tôi nói những gì tôi không nói, câu lệnh 2 và 42 là những cấu trúc rất hữu ích, tôi vẫn sử dụng chúng khi cần thiết. Quan điểm của tôi ở đây là chúng chỉ hữu ích trong một số trường hợp. Sẽ chẳng ích gì khi sử dụng chúng nếu có những từ khóa hoặc cấu trúc khác phù hợp nhất với tình huống của chúng ta. Lời khuyên này phù hợp với mọi thứ trong lập trìnhTóm lại, câu lệnh return ( 5) cho phép trả về một giá trị, được xác định hoặc không, cho ngữ cảnh gốc của hàm. Khi câu lệnh return được chạy, nó dừng việc thực thi hàm hiện tạiNó giúp tối ưu hóa việc viết mã của chúng tôi để giảm số lượng phạm vi và các mức thụt đầu dòng khác nhau bên trong một hàm. Nó cũng giúp ngăn việc xử lý quá nhiều dữ liệu khi chúng tôi đang gỡ lỗi Tham gia cùng hơn 100 nhà phát triển và doanh nhân và nhận thông báo về mọi nội dung mớiĐi nàoKhông có thư rác bao giờ. Hủy đăng ký trong một cú nhấp chuột bất cứ lúc nào Nếu bạn có bất kỳ câu hỏi hoặc lời khuyên nào, vui lòng tạo bình luận bên dưới. Tôi sẽ thực sự vui mừng để đọc bạn. Ngoài ra nếu bạn thích bài viết này, đừng quên chia sẻ nó với bạn bè của bạn. Nó giúp rất nhiều Hàm có thể trả về một số giá trị cho cuộc gọi không?Trả về là giá trị mà một hàm trả về tập lệnh gọi hoặc hàm khi nó hoàn thành tác vụ của mình . Giá trị trả về có thể là bất kỳ một trong bốn loại biến. xử lý, số nguyên, đối tượng hoặc chuỗi. Loại giá trị mà hàm của bạn trả về phụ thuộc phần lớn vào tác vụ mà nó thực hiện.
Làm cách nào để kiểm tra giá trị trả về của hàm trong JavaScript?Để kiểm tra xem một hàm có trả về true hay không, hãy gọi hàm đó và kiểm tra xem giá trị trả về của nó có bằng true không, e. g. if (func() === true) . Nếu giá trị trả về của hàm bằng true thì điều kiện sẽ được thỏa mãn và khối if sẽ chạy. |