初学者关于console.log和javascript函数的问题

beginner q about console.log and functions in javascript

本文关键字:javascript 函数 问题 log console 初学者      更新时间:2023-09-26

我有一个关于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调用该函数)返回undefined。这是因为console.log只返回语句吗?

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

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

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

然后:

console.log(timesTwo(4));

注意:你已经声明了一些multiplied之外的函数(在全局作用域),这是永远不会使用。您可能不需要它,因为在timesTwo函数中使用的multiplied变量是函数的本地变量,并且在本例中实际使用。

试试这个

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

你需要返回一些东西。

timesTwo(4)没有返回任何内容。因此,undefined登录到控制台。

EDIT: 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
}

console.log()只将内容打印到控制台,尝试使用return语句代替console.log()

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