创建一个Person类Person = Ember.Object.extend({ say: function(thing) { alert(thing); } }); 创建一个Person对象也就是Person类的实例
var person = Person.create(); person.say("Hello") // alerts "Hello"
创建实例时,也可以通过传入对象来为实例增添额外的属性
var tom = Person.create({ name: "Tom Dale", helloWorld: function() { this.say("Hi my name is " + this.get(‘name‘)); } }); tom.helloWorld() // alerts "Hi my name is Tom Dale" 当创建一个对象的新的实例时,也可以覆写类中定义的任何属性和方法
var yehuda = Person.create({ name: "Yehuda Katz", say: function(thing) { var name = this.get(‘name‘); this._super(name + " says: " + thing);//你可以使用对象的_super
方法(super
是JavaScript中的保留字)来调用被你覆写的原始方法
} });
也可以使用extend
方法为类创建子类。事实上,我们上面使用Ember.Object
对象的extend
方法创建新类时,即是创建了Ember.Object
的子类。
var LoudPerson = Person.extend({ say: function(thing) { this._super(thing.toUpperCase()); } });
时间: 2024-09-30 04:51:38