gpt4 book ai didi

javascript - 一种功能中的两种操作

转载 作者:行者123 更新时间:2023-11-28 20:26:38 25 4
gpt4 key购买 nike

function test(a, b){
a = a + 2;
b = b + 5;
}

var a = 1;
var b = 2;

test(a, b);

console.log(a);
console.log(b);

这会返回 1 和 2,但我想要 3 和 7。

可以在一个函数中进行两个操作吗?如果我使用 return 则可以工作,但是如何使用 return 进行两个操作?

直播:http://jsfiddle.net/anCq6/

最佳答案

您得到 1 和 2 而不是 3 和 7 的原因是因为有两个不同的 a 和 b 变量。您在函数外部声明了 a 和 b,并且 a 和 b 代表您传递给函数的值。 (基本上,函数括号中声明的参数是新声明的变量。)

如果您想更改外部 a 和 b,请将您的测试函数更改为以下内容:

function test(x, y) {
a = x + 2;
b = y + 5;
}

或者,不要将引用传递到函数中,以便内部作用域中的 a 和 b 引用与外部作用域相同的 a 和 b:

function test() {
a = a + 2;
b = b + 5;
}

关于javascript - 一种功能中的两种操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17264294/

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