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 相关文章推荐
Javascript &amp; DHTML 实例编程(教程)DOM基础和基本API
Jun 02 Javascript
jquery入门必备的基本认识及实例(整理)
Jun 24 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
Oct 21 Javascript
jQuery中queue()方法用法实例
Dec 29 Javascript
详述JavaScript实现继承的几种方式(推荐)
Mar 22 Javascript
javascript封装addLoadEvent实现页面同时加载执行多个函数的方法
Jul 25 Javascript
AngularJS入门教程之双向绑定详解
Aug 18 Javascript
纯JS实现只能输入数字的简单代码
Jun 21 Javascript
JavaScript 完成注册页面表单校验的实例
Aug 19 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
Oct 12 Javascript
js获取form表单中name属性的值
Feb 27 Javascript
javascript实现京东快递单号的查询效果
Nov 30 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实现递归抓取网页类实例
2015/04/03 PHP
PHP+ajax实现获取新闻数据简单示例
2018/05/08 PHP
深入认识JavaScript中的函数
2007/01/22 Javascript
JavaScript关于select的相关操作说明
2010/01/13 Javascript
javascript奇异的arguments分析
2010/10/20 Javascript
jQuery页面滚动浮动层智能定位实例代码
2011/08/23 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
2013/04/25 Javascript
js 点击页面其他地方关闭弹出层(示例代码)
2013/12/24 Javascript
js实现类似MSN提示的页面效果代码分享
2015/08/24 Javascript
浅谈js中function的参数默认值
2017/02/20 Javascript
jQuery+ajax实现局部刷新的两种方法
2017/06/08 jQuery
全选复选框JavaScript编写小结(附代码)
2017/08/16 Javascript
在Vue项目中使用d3.js的实例代码
2018/05/01 Javascript
JavaScript高级函数应用之分时函数实例分析
2018/08/03 Javascript
微信小程序实现获取小程序码和二维码java接口开发
2019/03/29 Javascript
跟混乱的页面弹窗说再见
2019/04/11 Javascript
微信小程序实现的绘制table表格功能示例
2019/04/26 Javascript
Angular8路由守卫原理和使用方法
2019/08/29 Javascript
谈谈IntersectionObserver懒加载的具体使用
2019/10/15 Javascript
[01:14]英雄,所敬略同——2018完美盛典宣传视频
2018/12/05 DOTA
使用Python实现一个简单的项目监控
2015/03/31 Python
Python入门教程之if语句的用法
2015/05/14 Python
浅析Python中yield关键词的作用与用法
2016/11/29 Python
python 删除列表里所有空格项的方法总结
2018/04/18 Python
Python中单线程、多线程和多进程的效率对比实验实例
2019/05/14 Python
使用Python实现毫秒级抢单功能
2019/06/06 Python
python使用配置文件过程详解
2019/12/28 Python
TensorFlow命名空间和TensorBoard图节点实例
2020/01/23 Python
python 模拟登陆github的示例
2020/12/04 Python
python使用smtplib模块发送邮件
2020/12/17 Python
详解用selenium来下载小姐姐图片并保存
2021/01/26 Python
优秀员工自荐书
2013/12/19 职场文书
寄语是什么意思
2014/04/10 职场文书
mysql 直接拷贝data 目录下文件还原数据的实现
2021/07/25 MySQL
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python
使用scrapy实现增量式爬取方式
2022/06/21 Python