JavaScript使用变量和基本函数

JavaScript使用变量和基本函数,javascript,Javascript,我目前正在Codecademy上学习JavaScript。在此,它给出了一个基本变量的示例: var divideByThree = function (number) { var val = number / 3; console.log(val); }; 然而,在我看来,函数中的变量似乎是不必要的。难道不可能这样做吗 var divideByThree = function (number) { console.log(number/3); }; 这似乎是删掉了一

我目前正在Codecademy上学习JavaScript。在此,它给出了一个基本变量的示例:

var divideByThree = function (number) {
    var val = number / 3;
    console.log(val);
};
然而,在我看来,函数中的变量似乎是不必要的。难道不可能这样做吗

var divideByThree = function (number) {
    console.log(number/3);
};

这似乎是删掉了一整行代码。该函数是否仍然有效?如果有效,为什么不使用该函数?

是的,该变量是不必要的。本课程的目的是教您声明变量的语法,课程设计者选择了尽可能简单的案例来实现这一点。

是的,它可以完美地工作。事实上,当我在实际代码中看到这样不必要的变量时,我经常会感到恼火


但是,这样做是为了解释变量是如何工作的,因此避免使用变量是没有任何意义的。

该代码的目的似乎只是演示如何/在何处使用变量。是的,您可以同样轻松地将变量替换为值。当然有时需要变量,但我想你的指导工具最终会达到这个目的

function (number) {
    var val = true ? 8*2 + number : function(){ return number + 2 };
    console.log(val);
};
在立即使用变量的情况下可以指定变量的一个原因是给它们起一个名字。在本例中,
value
也是一个糟糕的例子,但在某些情况下,您可能需要进行复杂的数学或计算来计算值,并为其指定名称有助于保持可读性


另一个原因是“缓存”结果(在进行DOM查找时尤其有用),因此无需在每次需要时重新计算值。

使用它。您可以使用值,而不是将其缓存到变量

function (number) {
    var val = true ? 8*2 + number : function(){ return number + 2 };
    console.log(val);
};
等于:

function (number) {
    console.log(true ? 8*2 + number : function(){ return number + 2 });
};

你为什么不先试试呢?是的,但那样你就不会学习变量了……它似乎在向你展示变量是如何使用的,但不是为什么使用。你是对的。该变量是冗余的。但正如你所说的,这只是为了学习代码,不是一个真实的例子。但这有点违背了向你展示如何声明和显示局部变量的目的。