Với return
bạn chỉ định giá trị của function
là gì. Bạn có thể sử dụng giá trị này để thực hiện các thao tác khác hoặc lưu trữ nó thành một biến và cứ như vậy.
Kể từ console.log
return
s undefined
, các ví dụ trong câu hỏi của bạn là tương đương, dưới dạng function
không đạt được tuyên bố trả về cũng sẽ trả về undefined
. Nhưng hãy để tôi cung cấp cho bạn một ví dụ:
function sum(arr) {
var s = 0;
for (var index in arr) {
s += arr[index];
}
return s;
}
function prodsum(arr, scalar) {
return scalar * sum(arr);
}
console.log(prodsum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3));
Kết quả sẽ là 165. Nếu chúng ta loại bỏ các return
s, sau đó cả hai function
s sẽ return
undefined
:
function sum(arr) {
var s = 0;
for (var index in arr) {
s += arr[index];
}
s;
}
function prodsum(arr, scalar) {
scalar * sum(arr);
}
console.log(prodsum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3));
và kết quả sẽ là như undefined
tốt. Về cơ bản, nếu bạn muốn function
để có kết luận hoặc giá trị cuối cùng, thì bạn có một return
trong đó.
Nguồn
2016-10-22 15:20:26
Nói chung, nếu bạn trả về một giá trị từ một hàm bạn cần gán nó cho một biến/đối tượng tương thích trong người gọi. –