创建函数对象的方式

创建函数对象有两种方式:(1)工厂模式创建函数对象 , (2)自定义构造函数创建对象
两者的区别:
*共同:都是函数,都可以创建对象,都可以传参
*不同:
1、工厂模式:
*函数名是小写,有new,有返回值,new之后的对象是当前的对象,直接调用函数就可以创建对象
*
2、自定义函数:
*函数名是大写(首字母),没有new,没有返回值,this是当前的对象,通过new的方式来创建对象
 
代码如下:
 
<script>
//1、工厂模式创建函数对象
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("小白", 18);
per1.sayHi();

 

//2、自定义构造函数创建对象
function Person(name, age) {
this.name = name;
this.age = age;
this.sayHi = function () {
console.log("我叫" + this.name)
};
}
//创建对象---实例化一个对象,并初始化
var per = new Person("小花", 20);
console.log(per instanceof Person);
 
</script>
posted @ 2018-09-21 11:00  哼着自己旳小调调  阅读(371)  评论(0编辑  收藏  举报