试图在对象构造函数中创建对象实例
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)
我正在尝试使用 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)