JavaScript中的对象内部对象或对象内部对象是否相同?

oob*_*noo 0 javascript object curly-braces

这段代码是:

const a = { aProp: 1 };
const c = {
    b: { a }
};
Run Code Online (Sandbox Code Playgroud)

与这段代码相同:

const a = { aProp: 1 };
const c = {
    b: a
};
Run Code Online (Sandbox Code Playgroud)

我的意思是c在两种情况下都具有完全相同的属性?代码中有哪些技术差异?

谢谢.

kin*_*ser 5

简而言之:没有.

b: { a }是一个简写,b: { a: a }因此它将导致嵌套属性:

const c = {
   b: { a: { aProp: 1 } },
};
Run Code Online (Sandbox Code Playgroud)

在你的第二种情况:

b: a,
Run Code Online (Sandbox Code Playgroud)

这只是一个正常的分配,这将导致:

const c = {
    b: { aProp: 1 },
};
Run Code Online (Sandbox Code Playgroud)