javascript:在嵌套对象中定义对父对象的引用

标签 javascript javascript-objects

我有以下对象:

var myObject = {
    attributes: { name: "dev.pus", age: 29 },
    someInjectedObject: {
        name: "someComponent",
        action: function() {
            // do something
            return this.this.attributes.name; // this surely won't work :(
        }
    }
};

如您所见,我想从对象的嵌套部分获取 myObject.attributes.name,而不必观察该值。

我该怎么做?如何定义引用?

编辑: 简单的 myObject.attributes 是不够的,因为 myObject 会发生更改或更好地分配给新变量。

最佳答案

在你的对象周围创建一个闭包:

var myObject = (function() {
  var result = {
    attributes: { name: "dev.pus", age: 29 },
    someInjectedObject: {
      name: "someComponent",
      action: function() {
        // do something
        return result.attributes.name;
      }
    };
  };
  return result;
})();

关于javascript:在嵌套对象中定义对父对象的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11492245/

相关文章:

javascript - 让弹出窗口只出现一次

javascript - 如何设置应在此代码下的目标图像

javascript - 可能未处理的拒绝——使用 angularjs 创建表单时出错

javascript - 在jquery中,如何检测段落是否包含一个链接且仅包含一个链接,没有其他内容

javascript - 在 JavaScript 中更改对象的类型

javascript - 使用 Javascript 对多个属性进行分组和求和

javascript - 将 cookie 传回服务器

javascript - 原型(prototype)函数和json符号函数的区别?

javascript - 当我从另一个对象调用它时对象未定义

javascript - 哈希表与 JavaScript 中的对象