js 创建对象
2014-11-17 17:15
295 查看
1.工厂模式
2.构造函数模式
3.原型模式
function createPerson(name, age, job) { var o = new Object(); o.name = name; o.age = age; o.job = job; o.sayName = function () { alert(this.name); }; return o; } var person1 = createPerson("Nicholas", 29, "Software Engineer"); var person2 = createPerson("Greg", 62, "Doctor");
2.构造函数模式
function Person(name, age, job) { this.name = name; this.age = age; this.job = job; this.sayName = function () { alert(this.name); }; } var person1 = new Person("Nicholas", 29, "Software Engineer"); var person2 = new Person("Greg", 62, "Doctor"); //与工厂模式的不同点 //1.没有显示创造对象 //2.直接将属性和方法赋值给this //3.没有return语句 //4.使用new创造对象 //使用方式 //1.当做构造函数使用 var person = new Person("Nicholas", 29, "Software"); person.sayName();//Nicholas //2.作为普通函数调用 Person("Yellow", 27, "Doctor"); window.sayName();//Doctor //3. 在另一个对象的作用域中调用 var o = new Object(); Person.call(o, "King", 25, "Nurse"); o.sayName();//King //缺点:每个方法都要在每个实例上重新创建一遍
3.原型模式
function Person() { } Person.prototype.name = "Yellowshorts"; Person.prototype.age = 29; Person.prototype.job = "Software"; Person.prototype.sayName = function () { alert(this.name); } var person1 = new Person(); person1.sayName();//Yellowshorts var person2 = new Person(); person2.sayName();//Yellowshorts alert(person1.sayName == person2.sayName);//true
相关文章推荐
- js使用对象直接量创建对象的代码
- 一个创建XMLHttpRequest对象的js文件(适用asp,php,jsp,asp.net等)
- js创建对象的几种方法
- js 动态创建网页对象
- js面向对象之创建对象的不同方式
- 动态创建JS对象
- 在js中使用createElement创建HTML对象和元素
- 姚博文 js解决 automation 服务器不能创建对象
- ASP.NET 创建母版页导致js出现“ 'document.getElementById(...)' 为空或不是对象”错误
- ajax 异步获取数据实现代码 (js创建ajax对象)
- JS面向对象编程(对象创建)
- JS 创建对象的几种方式
- JS创建对象,并添入容器
- JS 创建对象(常见几种)
- JS创建类和对象
- 创建你自己的对象 js
- JS 创建对象(常见的几种方法)
- JS 创建对象(常见的几种方法)
- JS面向对象编程(对象创建)
- js创建对象的几种方式