JavaScript 对象的属性和方法4种不同的类型


Posted in Javascript onMarch 19, 2010

第一种类型就是前面所说的私有类型,它的特点是对外界完全不具备访问性,要访问它们,只有通过特定的getter和setter。
第二种类型是动态的公有类型,它的特点是外界可以访问,而且每个对象实例持有一个副本,它们之间不会相互影响。
第三种类型是静态的公有类型,或者通常叫做原型属性,它的特点是每个对象实例共享唯一副本,对它的改写会相互影响。
第四种类型是类属性,它的特点是作为类型的属性而不是对象实例的属性,在没有构造对象时也能够访问,下面通过例子说明这四种属性类型各自的特点和区别:
类型的四种属性

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>Example 21.3</title> 
</head> 
<body> 
<h1 id="output"></h1> 
<script language="javascript" type="text/javascript"> 
<!-- 
function dwn(s) 
{ 
document.write(s + "<br/>"); 
} 
function myClass() 
{ 
var p = 100; //private property; 私有属性 
this.x = 10; //dynamic public property 动态公有属性 
} 
myClass.prototype.y = 20; //static public property or prototype property 原型属性 
myClass.z = 30; //static property //静态属性 
var a = new myClass(); 
dwn(a.p); //undefined 私有属性对象无法访问到 
dwn(a.x); //10 公有属性 
dwn(a.y); //20 公有属性 
a.x = 20; 
a.y = 40; 
dwn(a.x); //20 
dwn(a.y); //40 //动态公有属性y覆盖了原型属性y 
delete(a.x); 
delete(a.y); 
dwn(a.x); //undefined 动态公有属性x被删除后不存在 
dwn(a.y); //20 动态公有属性y被删除后还原为原型属性y 
dwn(a.z); //undefined 类属性无法通过对象访问 
dwn(myClass.z); //30 类属性应该通过类访问 
--> 
</script> 
</body> 
</html>
Javascript 相关文章推荐
创建一个复制UBB软件信息的链接或按钮的js代码
Jan 06 Javascript
javascript 二分法(数组array)
Apr 24 Javascript
详谈 Jquery Ajax异步处理Json数据.
Sep 09 Javascript
JavaScript使用slice函数获取数组部分元素的方法
Apr 06 Javascript
jquery插件之文字间歇自动向上滚动效果代码
Feb 25 Javascript
jquery点击切换背景色的简单实例
Aug 25 Javascript
jquery动态添加以及遍历option并获取特定样式名称的option方法
Jan 29 jQuery
Es6 Generator函数详细解析
Feb 24 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
Apr 20 Javascript
微信小程序实现的五星评价功能示例
Apr 25 Javascript
vue实现搜索功能
May 28 Javascript
nuxt.js服务端渲染中axios和proxy代理的配置操作
Nov 06 Javascript
jQuery 前的按键判断代码
Mar 19 #Javascript
Javascript 匿名函数及其代码模式原理
Mar 19 #Javascript
JS 有名函数表达式全面解析
Mar 19 #Javascript
Jquery Ajax学习实例6 向WebService发出请求,返回DataSet(XML) 异步调用
Mar 18 #Javascript
JavaScript 高效运行代码分析
Mar 18 #Javascript
JS setCapture 区域外事件捕捉
Mar 18 #Javascript
小议Javascript中的this指针
Mar 18 #Javascript
You might like
用Flash图形化数据(一)
2006/10/09 PHP
PHP中的extract的作用分析
2008/04/09 PHP
php Smarty 字符比较代码
2011/02/27 PHP
php过滤所有的空白字符(空格、全角空格、换行等)
2015/10/27 PHP
Yii2数据库操作常用方法小结
2017/05/04 PHP
js自定义事件及事件交互原理概述(二)
2013/02/01 Javascript
Javascript的时间戳和php的时间戳转换注意事项
2013/04/12 Javascript
Js,alert出现乱码问题的解决方法
2013/06/19 Javascript
js采用concat和sort将N个数组拼接起来的方法
2016/01/21 Javascript
JavaScript隐式类型转换
2016/03/15 Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码
2016/06/23 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
JavaScript中重名的函数与对象示例详析
2017/09/28 Javascript
JavaScript中Object值合并方法详解
2017/12/22 Javascript
Node.js静态服务器的实现方法
2018/02/28 Javascript
JS实现判断图片是否加载完成的方法分析
2018/07/31 Javascript
JavaScript解析JSON数据示例
2019/07/16 Javascript
解决node.js含有%百分号时发送get请求时浏览器地址自动编码的问题
2019/11/20 Javascript
vue实现页面切换滑动效果
2020/06/29 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
[02:44]2014DOTA2 国际邀请赛中国区预选赛 大神红毯秀
2014/05/25 DOTA
python进阶教程之函数参数的多种传递方法
2014/08/30 Python
python的tkinter布局之简单的聊天窗口实现方法
2014/09/03 Python
Pandas之drop_duplicates:去除重复项方法
2018/04/18 Python
python 实现多维数组(array)排序
2020/02/28 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
澳大利亚领先的运动鞋商店:Hype DC
2018/03/31 全球购物
伦敦眼门票在线预订:London Eye
2018/05/31 全球购物
和解协议书
2014/04/16 职场文书
国旗下的讲话演讲稿
2014/05/08 职场文书
初中教师业务学习材料
2014/05/12 职场文书
中药学专业求职信
2014/05/31 职场文书
电大奖学金获奖感言
2014/08/14 职场文书
汽车4S店销售经理岗位职责
2015/04/02 职场文书
2016毕业实习单位评语大全
2015/12/01 职场文书
2016年大学校运会广播稿件
2015/12/21 职场文书