gpt4 book ai didi

javascript - javascript 对象都是引用类型吗?

转载 作者:行者123 更新时间:2023-12-02 18:48:05 26 4
gpt4 key购买 nike

所有,假设我们有如下代码。

var b ={};

var a=b;
b=null;
if (a==null)
{
alert('a is null');
}

在代码运行之前,我认为a应该为空,因为我认为ab指向同一个对象或它们应该是相同的地址。但事实并非如此。 javascript对象引用类型不是像古典语言(c++/c#/java)吗?还是我错过了一些重要的事情?谢谢。

最佳答案

在 JavaScript 中,所有变量都是按值保存和传递的。

但是,对于对象(任何非原始对象)来说,该值是一个引用。

var v1, v2;
v1 = {
someProp: true
}; // Creates an object

v2 = v1; // The object now has two references pointed to it.
v1 = null; // The object now has one reference.
console.log(v2); // See the value of the object.
v2 = null; // No references left to the object. It can now be garbage collected.

关于javascript - javascript 对象都是引用类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24377188/

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