Javascript类定义语法,私有成员、受保护成员、静态成员等介绍

 更新时间:2011年12月08日 23:18:14   作者:  
JS只是一门支持面向对象编程的语言,通过OO可以让我们的代码组织更加人性化。可是与传统基与类的面向对编程语言不同它没有类概念并且没成员访问修饰符。这多少会给我们编程工作会带来一些束缚
其实通俗的讲类就是对象的模板,为了增强JS的OO特性,受mootoos框架启发我们可以使用一个JSON对象来描述这个对象的模板。在这个模板中我们可以模拟实现私有成员,受保护成员,静态成员。
这是一个在JS中模拟的类定义语法,代码中Class是一个自定义函数,它接受两个参数,第一个参数是类名、第二个参数是一个JSON用来一个对象的模板。在这个JSON对象中其中字段 "extend",,"initialize","static" 为一些预定义关键字,所表示的意义与基于类的传统OO语言相似。字段accessabe用来描述一个对象成员的可访问性,取值为("private","protected","public")在Class函数中会对这些关键字进行特殊处理,使其所修饰的成员具有相应的访问权限。
复制代码 代码如下:

Class("Person" ,{
//继承
extend: Animal,
//构造函数
initialize:function(name,sex){
this.name = name;
this.sex = sex;
Person.count++;
},
//静态成员
static:{
count: {
accessabe:"private",
value: ""
}
},
//实例成员
age: {//私有属性成员
accessabe:"private",
value:0
},
//公用属性
name: {
accessabe:"public",
value:""
},
sex:{
accessabe:"public",
value: ""
},
//方法
sleep: {//受保护方法
accessabe:"protected",
value: function(){
}
},
say: {//公用方法
accessabe:"public",
value: function(){
retun (this.age-1)
}
}
});
//调用
var xiaom = new Person("小明","男");
xiaom.age //私有属性不能访问
xiaom.sleep() //受保护方法不能访问
xiaom.say() //公用方法可以访问

相关文章

  • Javascript类型判断相关例题及解析

    Javascript类型判断相关例题及解析

    这篇文章主要介绍了Javascript类型判断相关例题及解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • JS中的async与await异步编程及await使用陷阱

    JS中的async与await异步编程及await使用陷阱

    这篇文章主要介绍了async与await异步编程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 小议Javascript中的this指针

    小议Javascript中的this指针

    在全局执行环境中使用this,标识Global对象,在浏览器中就是window对象。
    2010-03-03
  • js实现文字选中分享功能

    js实现文字选中分享功能

    本文主要分享了js实现文字选中分享功能的示例代码。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • ASP.NET jquery ajax传递参数的实例

    ASP.NET jquery ajax传递参数的实例

    下面小编就为大家带来一篇ASP.NET jquery ajax传递参数的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • Javascript中的神器——Promise

    Javascript中的神器——Promise

    本文主要介绍了Javascript中Promise的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • 如何在CocosCreator中使用JSZip压缩

    如何在CocosCreator中使用JSZip压缩

    这篇文章主要介绍了在CocosCreator中使用JSZip压缩,对JSZip感兴趣的同学,不妨看一下,并且亲自试一试
    2021-04-04
  • 利用JS屏蔽页面中的Enter按键提交表单的方法

    利用JS屏蔽页面中的Enter按键提交表单的方法

    下面小编就为大家带来一篇利用JS屏蔽页面中的Enter按键提交表单的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • javascript表单验证 - Parsley.js使用和配置

    javascript表单验证 - Parsley.js使用和配置

    大家还记得我们曾经介绍过的表单验证jquery插件jquery.validationEngine吧;天介绍的Parsley同样也可以帮助你只使用简单的配置即可实现表单验证功能,基于它的强大DOM-API,感兴趣的你可以不要错过了哦
    2013-01-01
  • js实现扫雷源代码

    js实现扫雷源代码

    这篇文章主要为大家详细介绍了js实现扫雷源代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11

最新评论