gpt4 book ai didi

初学者的javascript参数

转载 作者:行者123 更新时间:2023-11-30 10:44:52 25 4
gpt4 key购买 nike

为什么下面的代码不增加变量 a 为 1 ?

var a =5;

function abc(y){
y++;
}

abc(a);

//a is 5 not 6 why?

但是这样

var a = 5;

function abc(){
a++;
}

abc();

//a is 6

最佳答案

因为原始值在 JavaScript 中是按值传递的。

要获取要更新的值,您可以将 a 放在对象上并利用对象通过引用传递的事实(好吧,大多数情况下,实际上传递了引用的副本,但我们不会担心这个):

var obj = { a: 5 };

function abc(o){
o.a++;
}

abc(obj);

关于初学者的javascript参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8975978/

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