[JavaScript]实例化对象
- 使用语法结构创建的对象
function Duck(name) {
var obj = {
name: name,
say: function (content) {
console.log(content)
}
}
return obj;//返回一个对象
}
var RoastDuck = Duck(RoastDuck);//实例化
RoastDuck.say("hhh");//调用
- 使用构造器创建的对象
function Duck() {
this.name = [];
this.age = [];
}
var RoastDuck = new Duck();
- 使用 Object.create 创建的对象
ECMAScript 5 中引入了一个新方法:Object.create()。
function Duck() {
this.name = [];
this.age = [];
}
var Roast=Object.creat(Duck);
- 使用 class 关键字创建的对象
ECMAScript6 引入了一套新的关键字用来实现 class。
这些新的关键字包括 class, constructor,static,extends 和 super。
- class:用于声明一个类
- static:类的私有方法声明,被static声明的函数只可以在对象中使用,外部无法调用
- extends:用于告诉编译器,这个类所继承的对象
- super:点我
class Animal {
//初始化
constructor(age, height) {
this.height = height;
this.age = age;
}
}
//继承父类
class Duck extends Animal {
constructor() {
super();//继承父类的初始化
}
//添加新的功能
fnt(){
console.log("它只会吃!!");
}
}