Hàm trả về trong JavaScript

Khi một câu lệnh return được gọi trong một hàm, việc thực thi hàm này bị dừng. Nếu được chỉ định, một giá trị đã cho sẽ được trả về cho người gọi hàm. Nếu biểu thức bị bỏ qua, thay vào đó, undefined được trả về

    return expression;

Chức năng có thể trở lại

  • Các giá trị nguyên thủy (chuỗi, số, boolean, v.v. )
  • Các loại đối tượng (mảng, đối tượng, hàm, v.v. )

Không bao giờ trả lại nội dung nào đó trên một dòng mới mà không sử dụng dấu ngoặc đơn. Đây là một câu hỏi khó về JavaScript và kết quả sẽ không được xác định. Cố gắng luôn sử dụng dấu ngoặc đơn khi trả về nội dung nào đó trên nhiều dòng

function foo() {
    return 
      1;
}

function boo() {
    return (
      1
    );
}

foo(); --> undefined
boo(); --> 1

ví dụ

Hàm sau đây trả về bình phương của đối số của nó, x, trong đó x là một số

    function square(x) {
       return x * x;
    }
Hàm trả về trong JavaScript

Mã vận hành

Hàm sau đây trả về tích của các đối số của nó, arg1 và arg2

    function myfunction(arg1, arg2){
       var r;
       r = arg1 * arg2;
       return(r);
    }
Hàm trả về trong JavaScript

Chạy mã

Khi một hàm return một giá trị, giá trị đó có thể được gán cho một biến bằng cách sử dụng toán tử gán (

function foo() {
    return 
      1;
}

function boo() {
    return (
      1
    );
}

foo(); --> undefined
boo(); --> 1
0). Trong ví dụ bên dưới, hàm trả về bình phương của đối số. Khi chức năng giải quyết hoặc kết thúc, giá trị của nó là giá trị returned. Giá trị sau đó được gán cho biến
function foo() {
    return 
      1;
}

function boo() {
    return (
      1
    );
}

foo(); --> undefined
boo(); --> 1
0

    function square(x) {
        return x * x;
    }
    
    let squared2 = square(2); // 4

Nếu không có câu lệnh return tường minh, nghĩa là hàm thiếu từ khóa return, hàm sẽ tự động trả về undefined

Trong ví dụ sau, hàm

function foo() {
    return 
      1;
}

function boo() {
    return (
      1
    );
}

foo(); --> undefined
boo(); --> 1
3 thiếu từ khóa return. Khi kết quả gọi hàm được gán cho một biến, biến đó có giá trị là undefined

    function square(x) {
        let y = x * x;
    }
    
    let squared2 = square(2); // undefined
Hàm trả về trong JavaScript

Chạy mã

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO


Nếu bài viết này hữu ích, hãy tweet nó

Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu

Câu lệnh return sử dụng từ khóa return và một biểu thức hoặc một giá trị cần trả về theo yêu cầu của người lập trình. Câu lệnh return phải kết thúc bằng dấu chấm phẩy (;)

cú pháp

trả về giá trị ;

Giá trị trong cú pháp trên được định nghĩa là giá trị được trả về bởi hàm. Trong câu lệnh trả về, giá trị là tùy chọn. Câu lệnh return trả về kết quả không xác định nếu chúng ta không chỉ định giá trị

Trả về câu lệnh có giá trị

Ví dụ sau đây được sử dụng để hiển thị cách sử dụng đơn giản của câu lệnh trả về có giá trị trong JavaScript

Mã số

var show = a (2, 3);  
function a(b, c)  
{  
return b * c;  
}  
console.log( `Hàm này . ` {show} as a product of b and c.`);

đầu ra

Hàm trả về trong JavaScript

Ở đây chúng ta lấy một biến show và gán một hàm với 2 đối số. Sau đó, chúng ta tạo một hàm a() nhận hai tham số b và c và trả về tích của chúng. Sau đó, chúng tôi hiển thị kết quả được nhìn thấy rõ ràng ở trên

Câu lệnh trả về không có giá trị

Chúng ta cũng có thể sử dụng câu lệnh return không có giá trị nhưng câu lệnh return không có giá trị chỉ được sử dụng để kết thúc chương trình. Ví dụ sau giới thiệu việc sử dụng câu lệnh trả về không có giá trị

Mã số

var a = y ();  
function y()
{  
  var x = 1;  
  while(x)
   {
    console.log( `$ {x} `);
      if (x == 4)
      {
        return;
      }
      x++;
   }
}

Chương trình tiếp tục thực hiện cho đến khi giá trị của x trở thành 4 và điều khiển sẽ đi vào bên trong câu lệnh if và thực hiện câu lệnh return sẽ kết thúc chương trình

đầu ra

Hàm trả về trong JavaScript

Ví dụ trên cho thấy rõ ràng rằng chương trình tiếp tục in giá trị của x cho đến khi có điều kiện để thực hiện câu lệnh return và chương trình kết thúc

Hàm không có câu lệnh trả về

Ví dụ sau minh họa điều gì sẽ xảy ra nếu chúng ta không chỉ định câu lệnh trả về trong phần thân của hàm và yêu cầu giá trị trả về

Mã số

chức năng sản phẩm ( a )
{
  let b = a * a;
}
let result = product(4);
console.log( `Sản phẩm . $ { kết quả } ` );

Ở đây chúng ta tạo một hàm product() nhận tham số và lưu trữ tích của hai số trong biến b. Sau đó, bên ngoài hàm, chúng ta lấy một biến kết quả khác và khởi tạo nó bằng lệnh gọi hàm. Cuối cùng, chúng tôi in kết quả

đầu ra

Hàm trả về trong JavaScript

Trong ví dụ trên, có thể thấy rõ ràng rằng đầu ra không xác định vì biến kết quả yêu cầu nhận giá trị trả về từ hàm nhưng hàm không có câu lệnh trả về

Trả về câu lệnh có nhiều giá trị sử dụng mảng

Chúng ta cũng có thể trả về nhiều giá trị với sự trợ giúp của câu lệnh return trong khi sử dụng một mảng. Trong ví dụ bên dưới, chúng tôi có thể chỉ ra cách chúng tôi sử dụng câu lệnh return để trả về nhiều giá trị

Mã số

chức năng thông tin ()
{  
    let name = 'Huzaifa',  
    contact = '+92302123456',  
    age = '26',  
    des = 'Content Writer';  
     
    return [name, contact, age, des];  
}  
const [name, contact, age, des] = info();      
console.log( `Tên = ${name}
Contact = ${contact}
Age = ${age}
Designation = ${des}`);

Ở đây chúng ta tạo một hàm info(), bên trong hàm chúng ta tạo bốn biến (tên, liên hệ, tuổi, des) và gán cho chúng một số giá trị. Sau đó, chúng tôi trả về một mảng chứa tên, liên hệ, tuổi và des. Bên ngoài hàm, chúng ta lấy mảng const và khởi tạo nó bằng lệnh gọi hàm info(). Cuối cùng, chúng tôi in tất cả các biến

đầu ra

Hàm trả về trong JavaScript

Trong ví dụ trên, có thể thấy rõ rằng chương trình trả về nhiều giá trị với sự trợ giúp của câu lệnh return trong khi sử dụng một mảng

Trả về câu lệnh có nhiều giá trị bằng cách sử dụng đối tượng

Chúng ta cũng có thể trả về nhiều giá trị với sự trợ giúp của câu lệnh return trong khi sử dụng một đối tượng. Trong ví dụ bên dưới, chúng tôi có thể chỉ ra cách chúng tôi sử dụng câu lệnh return để trả về nhiều giá trị

Mã số

hàm lpmodal ()
{  
    let name = 'Macbook Air pro',  
    brand = 'Apple',  
    price = '$550.73';  
       
    return< . {name, brand, price};  
}  
let {name, brand, price} = lpmodal();      
console.log( `Tên = ${name}
Company = ${brand}
Price = ${price}`);

Ở đây chúng ta tạo một hàm lpmodal(), bên trong hàm chúng ta tạo ba biến (tên, nhãn hiệu, giá) và gán giá trị cho chúng. Sau đó, chúng tôi trả về một đối tượng chứa tên, thương hiệu và giá dưới dạng cặp khóa-giá trị. Bên ngoài hàm chúng ta lấy đối tượng và khởi tạo nó bằng lệnh gọi hàm lpmodal(). Cuối cùng, chúng tôi in tất cả các biến

đầu ra

Hàm trả về trong JavaScript

Trong ví dụ trên, có thể thấy rõ rằng một chương trình trả về nhiều giá trị với sự trợ giúp của câu lệnh return trong khi sử dụng một đối tượng

Sự kết luận

Trong JavaScript, câu lệnh return kết thúc chương trình và trả về một giá trị nếu được chỉ định. Trong bài viết trên, chúng ta có thể xem cách sử dụng câu lệnh return trong JavaScript, tại sao nên sử dụng câu lệnh return trong JavaScript và cách hoạt động của câu lệnh return trong các tình huống khác nhau

Trả về của một chức năng là gì?

Câu lệnh trả về kết thúc việc thực thi hàm và trả lại quyền điều khiển cho hàm gọi . Thực thi tiếp tục trong chức năng gọi tại thời điểm ngay sau cuộc gọi. Một câu lệnh return có thể trả về một giá trị cho hàm gọi. Để biết thêm thông tin, hãy xem Loại trả lại.

Hàm có thể trả về hàm trong JavaScript không?

Hàm có cùng dữ liệu dưới dạng số hoặc chuỗi, vì vậy hàm có thể được truyền cho các hàm khác dưới dạng đối số, cũng như được trả về từ hàm . Thậm chí chúng ta có thể định nghĩa một hàm bên trong một hàm khác và đưa nó ra bên ngoài.

Khi nào chúng ta nên sử dụng return trong JavaScript?

Có hai lần bạn muốn quay lại trong một hàm. Khi bạn thực sự muốn trả về một giá trị . Khi bạn chỉ muốn chức năng ngừng chạy.