javascript面向对象,从创建对象到对象继承(1/5)

时间:2013-03-22 12:10:02  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读::  代码如下 复制代码
  正文:js(第二电脑网http://www.002pc.com)面向对象,从创建对象到对象继承 大家有兴趣可以了解一下本文章。

js(第二电脑网http://www.002pc.com)创建对象的几种方法,本文讨论几种js(第二电脑网http://www.002pc.com)创建对象的方法,先从最好理解的工厂模式开始:

 代码如下 复制代码

function createPerson(name,age,job){
    var o = {};
    o.name = name;
    o.age = age;
    o.job = job;
    o.sayName = function(){
     alert(this.name);
    };
    return o;
}

var tanya = createPerson("tanya","30","female");
var ansel = createPerson("ansel","30","male");

tanya.sayName();
ansel.sayName();

这里先定义o为一个空的对象,然后为o设置了一堆属性。其实也可以直接给o属性的嘛,所以如果这样写也是ok的。

 代码如下 复制代码


function createPerson(name,age,job){
    var o = {
        name : name,
        age : age,
        job : job,
        sayName : function(){
         alert(this.name);
        }
    };
    return o;
}

var tanya = createPerson("tanya","30","female");
var ansel = createPerson("ansel","30","male");

tanya.sayName();
ansel.sayName();

还有一种办法是利用无敌的this,因为this就表示当前运行时的对象,将构造函数this的作用域指向新对象,将当前运行对象的属性和方法都赋给新对象,这样对象模式称为构造函数模式

 

 代码如下 复制代码

function Person(name,age,job){
    this.name = name;
    this.age = age;
    this.job = job;
    this.sayName = function(){
     alert(this.name);
    };
}

var tanya = new Person("tanya","30","female");
var ansel =  new Person("ansel","30","male");

tanya.sayName();
ansel.sayName();

在这个例子中,tanya和ansel都有一个constructor属性,该属性指向person。

考虑一下如下的情况:

 


javascript面向对象,从创建对象到对象继承(1/5)》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/JavaScript/26508.html


关于《javascript面向对象,从创建对象到对象继承(1/5)》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td