也许,可以将对象文字属性分配给对象本身

时间:2017-03-04 19:08:46

标签: javascript properties object-literal

我在h5bp/Front-end-Developer-Interview-Questions存储库中找到了这个问题。

一个例子让我困惑。

var foo = {n: 1};
var bar = foo;
foo.x = foo = {n: 2};
// foo.x is undefined  /* WHY??? */
bar.y = bar;  // This works however.
bar.y.y.y;
//> Object {n: 1, x: Object, y: Object}
var xoxo = foo = {n: 2};
//> Object {n: 2}

使用bar,我将对象文字的x属性分配给对象本身以及现在看来正在发生的事情是它通过{{1引用自身无限次"。

我期望行x中出现相同的行为。 foo.x = foo = {n: 2};会发生什么?为什么?如果你解释了让我得到正确答案的步骤,我会很感激

想要查看我的右手分配逻辑是否存在缺陷,但foo.x似乎按照我的预期分配。

0 个答案:

没有答案