下面的return
语句不输出任何内容或错误,无论出于什么原因?
我尝试了Chrome,Firefox和repl.it。
这是我的代码:
//Create a function that uses a return statement
function multiply(num1, num2){
return num1 * num2;
}
//Call the function
multiply(10,20 );
我没有任何输出或错误。
答案 0 :(得分:1)
如果您返回某些内容,则表示它返回了某些内容。现在,您只需调用multiple(),此函数将返回一个值,但您将其分配为空。
如果使用以下内容:
var returnValue = multiply(5, 10)
您的returnValue变量包含乘法函数的返回值。
答案 1 :(得分:1)
您没有任何输出,因为您没有做任何事情来生成输出。您不会遇到任何错误,因为您的代码中没有错误。 (不使用函数的返回值是可以的;实际上,这很常见。)
仅从函数返回值不会在任何地方输出它,而只是从函数返回它,因此您可以在调用该函数的代码中使用它。您可能会用它做的一件事就是输出它,但也可能将它用于其他用途,例如将其包括在计算中:
function multiply(num1, num2){
return num1 * num2;
}
// Using the return value to output it:
console.log(multiply(2, 3));
// Using it in another calcuation...
const x = multiply(2, 3) + 4;
// ...the result of which we might output if we like:
console.log(x);
但是同样,您可能永远不会输出函数的结果。例如,此代码使用函数document.getElementById
的结果来设置事件处理程序。这样做根本没有输出:
let clickCounter = 0;
document.getElementById("btn").addEventListener("click", function() {
++clickCounter;
});
<input type="button" value="Click Me" id="btn">
答案 2 :(得分:1)
除非您没有向我们展示所有代码,否则是因为您没有将值 返回给 。返回值的函数需要以某种方式使用该值才能使其可见。一些示例可能是:
console.log(multiply(10,20));
var result = multiply(10,20);
document.getElementById("equation").textContent = "10 x 20 = " + multiply(10,20);
在没有主动捕获和/或使用方法的返回值的情况下,它将不会在任何地方显示。