我有以下两个文件:
product.js ,
define(function(products) {
return {
reserveProduct: function(id) {
console.log(id);
}
}
});
purchase.js
define(["products"], function(products) {
return {
function(id) {
products.reserveProduct(id);
}
}
})
我正在创建购买对象。
new purchase(1);
现在我想将purchase.js扩展为AnalyExtendpurchase.js
并创建一个新对象
new AnalyExtendpurchase(1);
我想将id作为参数传递给父对象,即购买对象
通常在Java中,等效代码为:
Purchase.java
public class Purchase{
purchase(int id){
this.id=id;
}
}
AnalyExtendpurchase.java
AnalyExtendpurchase extends purchase{
AnalyExtendpurchase(int id){
super(id);
}
}
java中的对象创建
new AnalyExtendpurchase(10);
我想使用requirejs遵循相同的对象创建模式。
答案 0 :(得分:0)
我在下面提供了一个示例:希望它可以帮到你..
假设我们有ABC()构造函数,如:
function ABC(firstName, lastName){
this.firstName = firstName;
this.lastName = lastName;
}
然后让我们定义XYZ()构造函数,
function XYZ(firstName, lastName,subject) {
ABC.call(this, firstName, lastName);
this.subject = subject;
}
这里call()用于调用在其他地方定义的函数,但在当前上下文中
最后,您可以将XYZ()原型设置为:
XYZ.prototype = Object.create(ABC.prototype);
XYZ.prototype.constructor = XYZ;
这里,上面的行创建一个新对象,使其成为XYZ.prototype的值,并将继承自ABC.prototype
希望上述原型继承样本可以帮助您。快乐的编码:)