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 相关文章推荐
js离开或刷新页面检测(且兼容FF,IE,Chrome)
Mar 05 Javascript
jQuery中triggerHandler()方法用法实例
Jan 19 Javascript
jquery实现表格隔行换色效果
Nov 19 Javascript
jQuery 操作input中radio的技巧
Jul 18 Javascript
Android中Okhttp3实现上传多张图片同时传递参数
Feb 18 Javascript
JS沙箱模式实例分析
Sep 04 Javascript
vue登录注册及token验证实现代码
Dec 14 Javascript
React Native 自定义下拉刷新上拉加载的列表的示例
Mar 01 Javascript
使用gulp构建前端自动化的方法示例
Dec 25 Javascript
vue百度地图 + 定位的详解
May 13 Javascript
vue修改Element的el-table样式的4种方法
Sep 17 Javascript
在Vue中使用Echarts实例图的方法实例
Oct 10 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新手上路(九)
2006/10/09 PHP
php对gzip文件或者字符串解压实例参考
2008/07/25 PHP
php递归函数怎么用才有效
2018/02/24 PHP
JavaScript类和继承 prototype属性
2010/09/03 Javascript
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
Js 时间函数getYear()的使用问题探讨
2013/04/01 Javascript
火狐下input焦点无法重复获取问题的解决方法
2014/06/16 Javascript
在JavaScript中重写jQuery对象的方法实例教程
2014/08/25 Javascript
基于bootstrap插件实现autocomplete自动完成表单
2016/05/07 Javascript
jQuery替换节点用法示例(使用replaceWith方法)
2016/09/08 Javascript
seajs实现强制刷新本地缓存的方法分析
2017/10/16 Javascript
ligerUI---ListBox(列表框可移动的实例)
2017/11/28 Javascript
js运算符的一些特殊用法
2018/07/29 Javascript
vue2.0自定义指令示例代码详解
2019/04/25 Javascript
mock.js模拟数据实现前后端分离
2019/07/24 Javascript
json_decode 索引为数字时自动排序问题解决方法
2020/03/28 Javascript
详解Webpack4多页应用打包方案
2020/07/16 Javascript
vue 导航菜单刷新状态不消失,显示对应的路由界面操作
2020/08/06 Javascript
python爬虫入门教程之点点美女图片爬虫代码分享
2014/09/02 Python
python编写简单爬虫资料汇总
2016/03/22 Python
python opencv实现运动检测
2018/07/10 Python
django-rest-swagger的优化使用方法
2019/08/29 Python
在Python中使用MySQL--PyMySQL的基本使用方法
2019/11/19 Python
django框架auth模块用法实例详解
2019/12/10 Python
M1芯片安装python3.9.1的实现
2021/02/02 Python
全天然狗零食:Best Bully Sticks
2016/09/22 全球购物
就业自我评价
2014/02/04 职场文书
商场主管竞聘书
2014/03/31 职场文书
环保建议书100字
2014/05/14 职场文书
人力资源求职信
2014/05/25 职场文书
教师党员岗位承诺书
2014/05/29 职场文书
国际政治学专业推荐信
2014/09/26 职场文书
学校感恩节活动策划方案
2014/10/06 职场文书
护士求职简历自我评价
2015/03/10 职场文书
CSS作用域(样式分割)的使用汇总
2021/11/07 HTML / CSS
Java 深入探究讲解简单工厂模式
2022/04/07 Java/Android