试图在对象构造函数中创建对象实例

trying to create an object instance inside of an object constructor

我正在尝试使用 this.user.Message.parent 访问我的父变量。我是 javascript 的新手,不明白为什么我会收到“Uncaught TypeError: Cannot set 属性 'parent' of undefined”错误。 我显然做错了什么,很想知道如何以其他方式实现我所追求的目标。我知道我可以用原型做一些事情,但我试图通过这个“路径”访问父级:this.user.Message.parent。这是代码:

function User(name_){
    this.name = name_;
    this.message= new Message();
    this.create_new_message = true;
    this.class_prefix = this.name;
}

function Message(){
    this.parent = null;
    this.backround = document.getElementById("test");
    this.text = document.getElementById("test");
}

this_user = new User("this");
partner_user = new User("partner");

this_user.Message.parent = document.getElementById("test");

我希望有人能帮助我,并提前感谢你的帮助:)

JavaScript 区分大小写。 User 函数中的 message 变量是小写的,而您引用的是大写的。

而不是:

this_user.Message.parent

这样做:

this_user.message.parent

function User(name_){
    this.name = name_;
    this.message= new Message();
    this.create_new_message = true;
    this.class_prefix = this.name;
}

function Message(){
    this.parent = null;
    this.backround = document.getElementById("test");
    this.text = document.getElementById("test");
}

this_user = new User("this");
partner_user = new User("partner");

this_user.message.parent = document.getElementById("test"); // Here

在您的 class 用户中,您使用小写字母 m

实例化了 message (this.message)