gpt4 book ai didi

javascript - 学习JS,对何时使用return语句感到困惑

转载 作者:行者123 更新时间:2023-12-02 16:42:47 28 4
gpt4 key购买 nike

我刚刚学习完函数,对于在函数中使用 return 语句和变量有点困惑。

function test1(frag1, frag2) {
return frag1 + frag2;
}

function test2(frag1, frag2) {
message = frag1 + frag2;
}

alert(test1("this one used", " a return"));

test2("this one used ", "a variable")
alert(message);

除了在警报之外调用 test2 之外,使用 return 和将我需要的内容放入变量之间有什么区别吗?我了解到要从函数中获取数据,我必须使用 return 语句。那么 test2 是如何工作的呢?

你只能使用 return 从函数中获取一件事,对吗?那么,我可以使用 test2 来获取多个内容吗?像这样:

function test2(a, b, c) {
message1 = a + b;
message2 = b + c;
message3 = a + c;
}

或者,我只是想太多/错了吗?

提前致谢。

最佳答案

[...] is there any difference between using return and putting what I need inside a variable?

是的。

如果您使用全局变量,例如,在函数中未使用 var 声明的变量,则该变量将在全局范围内创建。这意味着您可能会意外地覆盖同名的变量,并可能导致各种难以诊断的错误。全局范围通常是一件坏事。

test2“有效”,因为message在全局范围内,这在任何地方都可用。爱因斯坦将其称为“幽灵般的远距离作用”,这使得代码更难推理,例如“这个变量发生了变化——如何变化?为什么?在哪里?在什么情况下?”一切都变得更加难以回答。

使用 return 语句并将值修改更改的位置集中并包含在尽可能小的范围内,使得对正在发生的事情的推理变得更加容易。

关于javascript - 学习JS,对何时使用return语句感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27361243/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com