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


Posted in Javascript onMarch 06, 2014
     //构造函数
        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());
            }
Javascript 相关文章推荐
javascript 导出数据到Excel(处理table中的元素)
Dec 18 Javascript
到处都是jQuery选择器的年代 不了解它们的性能,行吗
Jun 18 Javascript
js简易namespace管理器 实例代码
Jun 21 Javascript
jquery中用jsonp实现搜索框功能
Oct 18 Javascript
JS 调试中常见的报错问题解决方法
May 20 Javascript
jquery+css实现侧边导航栏效果
Jun 12 jQuery
JavaScript中常见的八个陷阱总结
Jun 28 Javascript
ejsExcel模板在Vue.js项目中的实际运用
Jan 27 Javascript
nginx+vue.js实现前后端分离的示例代码
Feb 12 Javascript
JS实现头条新闻的经典轮播图效果示例
Jan 30 Javascript
小程序如何在不同设备上自适应生成海报的实现方法
Aug 20 Javascript
vue实现桌面向网页拖动文件的示例代码(可显示图片/音频/视频)
Mar 01 Vue.js
javascript简单实现命名空间效果
Mar 06 #Javascript
深入剖析JavaScript中的枚举功能
Mar 06 #Javascript
javascript模拟枚举的简单实例
Mar 06 #Javascript
js模拟C#中List的简单实例
Mar 06 #Javascript
js模拟hashtable的简单实例
Mar 06 #Javascript
JavaScript简单实现鼠标拖动选择功能
Mar 06 #Javascript
用JS在浏览器中创建下载文件
Mar 05 #Javascript
You might like
PHP5 操作MySQL数据库基础代码
2009/09/29 PHP
php算开始时间到过期时间的相隔的天数
2011/01/12 PHP
用PHP实现弹出消息提示框的两种方法
2013/12/17 PHP
简单实用的网站PHP缓存类实例
2014/07/18 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
Yii使用smsto短信接口的函数demo示例
2016/07/13 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
jquery的$(document).ready()和onload的加载顺序
2010/05/26 Javascript
js+xml生成级联下拉框代码
2012/07/24 Javascript
js 通用订单代码
2013/12/23 Javascript
php+js实现倒计时功能
2014/06/02 Javascript
JavaScript实现给按钮加上双重动作的方法
2015/08/14 Javascript
图文详解Heap Sort堆排序算法及JavaScript的代码实现
2016/05/04 Javascript
微信小程序 less文件编译成wxss文件实现办法
2016/12/05 Javascript
AngularJS通过ng-route实现基本的路由功能实例详解
2016/12/13 Javascript
NodeJS创建最简单的HTTP服务器
2017/05/15 NodeJs
在小程序中集成redux/immutable/thunk第三方库的方法
2018/08/12 Javascript
微信小程序实现购物页面左右联动
2019/02/15 Javascript
JS实现移动端双指缩放和旋转方法
2019/12/13 Javascript
微信分享invalid signature签名错误踩过的坑
2020/04/11 Javascript
jQuery--遍历操作实例小结【后代、同胞及过滤】
2020/05/22 jQuery
Antd的table组件表格的序号自增操作
2020/10/27 Javascript
Python 自动补全(vim)
2014/11/30 Python
Python中的元类编程入门指引
2015/04/15 Python
pip安装python库的方法总结
2019/08/02 Python
Python csv模块使用方法代码实例
2019/08/29 Python
在python tkinter界面中添加按钮的实例
2020/03/04 Python
基于python代码批量处理图片resize
2020/06/04 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
Python logging模块进行封装实现原理解析
2020/08/07 Python
Ted Baker英国官网:男士和女士服装及配件
2017/03/13 全球购物
中软Java笔试题
2012/11/11 面试题
四种会话跟踪技术
2015/05/20 面试题
限期整改通知书
2015/04/22 职场文书
教你利用Nginx 服务搭建子域环境提升二维地图加载性能的步骤
2021/09/25 Servers