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 相关文章推荐
jquery 新浪网易的评论块制作
Jul 01 Javascript
JQuery动态给table添加、删除行 改进版
Jan 19 Javascript
js网页侧边随页面滚动广告效果实现
Apr 14 Javascript
jQuery的remove()方法使用详解
Aug 11 Javascript
jQuery stop()用法实例详解
Jul 28 Javascript
Mvc提交表单的四种方法全程详解
Aug 10 Javascript
详解各版本React路由的跳转的方法
May 10 Javascript
在 vue-cli v3.0 中使用 SCSS/SASS的方法
Jun 14 Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
Aug 26 Javascript
vue实现循环滚动列表
Jun 30 Javascript
ES6中的类(Class)示例详解
Dec 09 Javascript
html5 录制mp3音频支持采样率和比特率设置
Jul 15 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
php表单提交问题的解决方法
2011/04/12 PHP
PHP实现的交通银行网银在线支付接口ECSHOP插件和使用例子
2014/05/10 PHP
TP5框架简单登录功能实现方法示例
2019/10/31 PHP
window.open的功能全解析
2006/10/10 Javascript
js中几种去掉字串左右空格的方法
2006/12/25 Javascript
Javascript 调试利器 Firebug使用详解六
2009/07/05 Javascript
js原生态函数中使用jQuery中的 $(this)无效的解决方法
2011/05/25 Javascript
javascript与cookie 的问题详解
2013/11/11 Javascript
5个数组Array方法: indexOf、filter、forEach、map、reduce使用实例
2015/01/29 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
浅谈Angular.js中使用$watch监听模型变化
2017/01/10 Javascript
javaScript+turn.js实现图书翻页效果实例代码
2017/02/16 Javascript
写给小白看的JavaScript异步
2017/11/29 Javascript
详解Angularjs 自定义指令中的数据绑定
2018/07/19 Javascript
详解Nuxt.js 实战集锦
2019/11/19 Javascript
redux处理异步action解决方案
2020/03/22 Javascript
VUE+elementui组件在table-cell单元格中绘制微型echarts图
2020/04/20 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
2020/08/15 Javascript
Python编程中装饰器的使用示例解析
2016/06/20 Python
简单谈谈python中的Queue与多进程
2016/08/25 Python
python实现超简单的视频对象提取功能
2018/06/04 Python
对pytorch网络层结构的数组化详解
2018/12/08 Python
Python简易版图书管理系统
2019/08/12 Python
python读取excel数据并且画图的实现示例
2021/02/08 Python
css3中flex布局宽度不生效的解决
2020/12/09 HTML / CSS
软件售后服务承诺书
2014/05/21 职场文书
销售顾问工作计划书
2014/08/15 职场文书
年度优秀员工获奖感言
2014/08/15 职场文书
六查六看心得体会
2014/10/14 职场文书
2014年行政助理工作总结
2014/11/19 职场文书
2014年药品销售工作总结
2014/12/16 职场文书
教师学习心得体会范文
2016/01/21 职场文书
《比尾巴》教学反思
2016/02/24 职场文书
导游词之永济鹳雀楼
2020/01/16 职场文书
Spring Bean是如何初始化的详解
2022/03/22 Java/Android