任何人都可以解释为什么在函数中使用javascript return语句?何时以及为什么要使用它?
请帮帮我。
答案 0 :(得分:8)
为什么在函数中使用它?
<强> 1。返回函数的结果
返回执行的操作 - 将返回返回函数调用者
function sum(num1, num2) {
var result = number1 + number2
return result
}
var result = sum(5, 6) // result now holds value '11'
<强> 2。停止执行功能
使用return
的另一个原因是因为它打破函数的执行 - 这意味着如果你点击return
,函数会停止< / em>运行跟随它的任何代码。
function sum(num1, num2) {
// if any of the 2 required arguments is missing, stop
if (!num1 || !num1) {
return
}
// and do not continue the following
return number1 + number2
}
var result = sum(5) // sum() returned false because not all arguments were provided
我们为什么要使用它?
因为它允许您重用代码。
例如,如果您正在编写一个执行几何计算的应用程序,那么您可能需要计算2点之间的距离;这是一个常见的计算方法。
不 - 相反,你将它包装成一个函数并让它返回结果 - 所以你编写一次公式,然后你可以在任何地方重复使用它:
function getLineDistance(x1, y1, x2, y2) {
return Math.sqrt((Math.pow((x2 - x1), 2)) + (Math.pow(( y2 - y1), 2)))
}
var lineDistance1 = getLineDistance(5, 5, 10, 20);
var lineDistance2 = getLineDistance(3, 5, 12, 24);
答案 1 :(得分:1)
您使用return语句有两个原因:
从函数返回特定值。
在函数的最后一行代码之前完成函数的执行。
没有任何return value;
语句,该函数不返回特定值(技术上返回值为undefined
)。
如果函数中没有特定的return语句,函数将一直运行到函数中的最后一行代码。
示例:
function add(x, y) {
// return a sum of the two arguments
return x + y;
}
console.log(add(1, 3)); // 4
function findParm(str, key) {
if (!str || !key) {
// invalid parameters, so return null
return null;
}
var pieces = str.split("&");
for (var i = 0; i < pieces.length; i++) {
var loc = str.indexOf(pieces[i] + "=");
if (loc >= 0) {
// when we've found a match, return it and finish execution of the function
return str.slice(loc + key.length + 1);
}
}
// no match found, return null
return null;
}
var str = "user=John&login=yes"
findParam(str, "login"); // "yes"
答案 2 :(得分:1)
它用于从函数返回一个值。
假设您想要一个函数来进行一些计算......例如,在浏览器屏幕上计算一个div框的左侧位置。
你调用函数并给它html选择器,然后函数'返回'左边的位置值。