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

作者:半夏时间:2026-10-27 23:20:06浏览:497

本文介绍如何在JavaScript中通过构造函数定义实例属性,利用prototype原型对象共享方法,从而模拟C#等面向对象语言中的类功能。通过person示例演示属性读写与原型继承机制,帮助理解JS对象模型。

JavaScript构造函数与原型模拟类功能

代码如下:

// 构造函数定义
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简单视为一个模板,新创建的自定义对象都是该模板的一个拷贝(实际上并非拷贝,而是链接,只是这种链接不可见,给人造成拷贝的错觉)。
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());
            }
作者最新文章