JavaScript利用构造函数和原型的方式模拟C#类的功能

  

复制代码 代码如下:

       //构造函数

  function person(name, age) {

  this.name = name;

  this.age = age;

  }

  //定义person原型,原型里的属性可以被自定义对象引用

  person.prototype = {

  getName: function () {

  return this.name;

  },

  getAge: function () {

  return this.age;

  }

  }

  

复制代码 代码如下:

  这就需要引入另外一个概念 - 原型(prototype),我们可以简单的把prototype看做是一个模版,新创建的自定义对象都是这个模版(prototype)的一个拷贝 (实际上不是拷贝而是链接,只不过这种链接是不可见,给人们的感觉好像是拷贝)。

  JavaScript通过构造函数和原型的方式模拟实现了类的功能。

       window.onload = function () {

  person.prototype.sex = '男';

  var fmj =new person('kkk', 22);

  alert('第一次输出:'+fmj.sex);

  fmj.sex = '保密';

  alert('第二次输出:' + fmj.sex);

  delete fmj.sex;

  alert('第三次输出:' + fmj.sex);

  //在debug的控制台输出结果.

  //console.log(fmj.getAge());

  }