javascript - 在 JavaScript 中访问对象内部的属性

标签 javascript object

我现在遇到了一些启动问题。我试图在创建对象的另一个属性时引用该对象的一个​​属性。

例如:

 var x = {
     a1 : "a",
     b2 : this.a1,
      c : "c"
 }

 alert(x.a1); // Returns properly
 alert(x.b2); // Returns undefined.

如果我尝试使 b2 引用 x.b2,它也不起作用。谁能指出我正确的方向?

总而言之,我试图根据 a1 的值来决定 b2 的值,而不必从对象中采取另一步。

这是一个 fiddle -- http://jsfiddle.net/fpG9h/

最佳答案

您绝对需要getters and setters 。你可以这样定义它们

var obj = {
    a1: "a",
    get b2() {
        return this.a1;
    },
    set b2(value) {
        this.a1 = value;
    },
    c: "c"
}

console.log(obj.b2);    // a
obj.b2 = "bbb";
console.log(obj.b2);    // bbb
console.log(obj.a1);    // bbb

关于javascript - 在 JavaScript 中访问对象内部的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22642612/

相关文章:

javascript - 将表单的 ID 传递给函数 click() 的参数中

javascript - 什么时候使用 Yarn 而不是 NPM?有什么区别?

JavaScript 对象

Javascript - 试图在动态属性中包含对象

javascript - 箭头函数中 "this"的可见性

javascript - 将 HMR 与 SSR react

javascript - 如何使用 lodash 对多个进行分组

c# - 哪个物体比较轻

javascript - 如何将日期格式转换为 `2019-04-24T04:27:14.867Z`

javascript - 使用 Promise 的值更新对象属性