Js创建对象的几种方式:
- 使用系统构造函数创建对象 Object
var smallDog=new Object();
smallDog.name="大黄";
smallDog.age=3;
smallDog.color="黄色";
smallDog.weight="250";
smallDog.eat=function () {
console.log("我要吃大骨头");
};
smallDog.walk=function () {
console.log("走一步摇尾巴");
};
smallDog.eat();//方法的调用 的时候需要()
smallDog.walk();
- 使用字面量方式创建对象
var person={};
person.name=’小白’;
- 工厂模式创建对象(由系统构造函数演变到工厂模式创建对象)
创建学生的对象
创建小狗的对象
创建人的对象
~~~~~~
每次都要不同对象,这里的对象的特征相同
可以使用工厂模式对他们进行加工
function createObject(name,age) {
var obj = new Object();//创建对象
//添加属性
obj.name = name;
obj.age = age;
//添加方法
obj.sayHi = function () {
console.log("阿涅哈斯诶呦,我叫:" + this.name + "我今年:" + this.age);
};
return obj;
}
//创建人的对象
var per1 = createObject("小芳",20);
per1.sayHi();
//创建一个人的对象
var per2 = createObject("小红",30);
per2.sayHi();
- 自定义构造函数创建对象(构造函数首字母必须是大写)
function Person(name,age) { //自定义的构造函数
this.name=name;
this.age=age;
this.sayHi=function () {
console.log("我叫:"+this.name+",年龄是:"+this.age);
};
}
var obj=new Person("小明",10); //创建的对象
console.log(obj.name);
console.log(obj.age);
obj.sayHi();
var obj2=new Person("小红",20);
console.log(obj2.name);
console.log(obj2.age);
obj2.sayHi();
自定义构造函数创建对象: 先自定义一个构造函数, 然后创建对象