javascript - 在对象文字中引用javascript中嵌套对象的外层

标签 javascript

<分区>

我想做一些类似这里的任务 Self-references in object literals / initializers , 除了它是阿姨/叔叔键的值,或父对象的兄弟键。例如:

const obj = {
  parent: {
    child: {
      aunt: /* aunt object */
    }
  },
  aunt: {
    foo: {
      bar: 1
    }
  }
}

这里有一个非常相似的问题 Reference nested 'sibling'-property in object literal但不幸的是,这并不是我想要的。理想情况下,该解决方案是可扩展的,并且可能需要处理我想要访问与 key 相关的曾曾祖表对象(如果需要)的情况。谢谢!

最佳答案

在单个对象字面量中是不可能的。您必须先定义对象,然后分配给 aunt 键。

const obj = {
  parent: {
    child: {
    }
  },
  aunt: {
    foo: {
      bar: 1
    }
  }
};
obj.parent.child.aunt = obj.aunt;
console.log(obj.parent.child.aunt === obj.aunt)

或者,你可以预先定义aunt:

const aunt = {
  foo: {
    bar: 1
  }
};
const obj = {
  parent: {
    child: {
      aunt
    }
  },
  aunt
};
console.log(obj.parent.child.aunt === obj.aunt)

关于javascript - 在对象文字中引用javascript中嵌套对象的外层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54846130/

相关文章:

javascript - 在后退按钮上重置表单

javascript - 如何让这两个 "col"在手机上以不同的顺序堆叠? Bootstrap 4

javascript - 即使在页面刷新或传输后也保持 Accordion 的状态

Javascript三元运算奇怪的bug

javascript - 如何使用javascript打印文件夹内的所有txt文件

javascript - 如何从 JSCL 方法调用 Common Lisp 代码

javascript - JS queryCommandState ("superscript") 总是返回 false

javascript - react : Updating Component Property

javascript - 在 vue 中添加到列表中

javascript - 如何在 node/npm 中创建仅在应用程序内部的服务器或修改传出请求的任何响应正文