0

我有一个关于 javascript 中的 console.log 的快速问题。以下是我写的代码:

var multiplied = 5;

var timesTwo = function(number) {

    var multiplied = number * 2;
    console.log(multiplied);
};

timesTwo(4);
console.log(timesTwo(4));

“4”的第一个函数调用完美,第二个版本,我通过console.log调用函数,返回未定义。这是因为 console.log 只返回语句吗?

4

4 回答 4

2

这是因为 console.log 只返回语句吗?

console.log不返回任何东西。它只是将其参数记录到控制台。所以你应该从你timesTwo的乘法结果返回:

var timesTwo = function(number) {
    var multiplied = number * 2;
    return multiplied;
};

接着:

console.log(timesTwo(4));

备注:您multiplied在函数之外(在全局范围内)声明了一些从未使用过的函数。您可能不需要它,因为在函数multiplied内部使用的变量是timesTwo函数的本地变量,并且在此示例中实际使用的变量。

于 2013-03-19T07:53:18.293 回答
0

尝试这个

var timesTwo = function(number) {

    var multiplied = number * 2;
    console.log(multiplied);

return multiplied;
};

你需要返回一些东西。

于 2013-03-19T07:54:53.447 回答
0

timesTwo(4)没有返回任何东西。所以undefined登录控制台。

编辑: console.log不返回任何东西,只在控制台中写一些东西。并非所有浏览器都有控制台(即 IE),因此您应该使用:

if(window.console){

console.log(" log into console");

}else{

alert("alert as not console available"); // using the alert is up to you

}
于 2013-03-19T07:54:55.860 回答
0

console.log() 仅将内容打印到控制台,请尝试使用 return 语句而不是 console.log()

const timesTwo = function(number) {
    return number * 2;
};
于 2018-02-10T19:17:33.200 回答