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学习基础知识小结
Nov 25 Javascript
jQuery修改class属性和CSS样式整理
Jan 30 Javascript
jQuery实现图像旋转动画效果
May 29 Javascript
js实现文字超出部分用省略号代替实例代码
Sep 01 Javascript
JavaScript之Vue.js【入门基础】
Dec 06 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
Mar 02 Javascript
vue数字类型过滤器的示例代码
Sep 07 Javascript
JavaScript轮播停留效果的实现思路
May 24 Javascript
详解Webpack-dev-server的proxy用法
Sep 08 Javascript
浅谈layui 绑定form submit提交表单的注意事项
Oct 25 Javascript
JS数据类型STRING使用实例解析
Dec 18 Javascript
JavaScript闭包原理与用法学习笔记
May 29 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 时间计算问题小结
2009/01/04 PHP
数据库查询记录php 多行多列显示
2009/08/15 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
php 根据url自动生成缩略图并处理高并发问题
2014/01/23 PHP
php生成xml时添加CDATA标签的方法
2014/10/17 PHP
php+ajax制作无刷新留言板
2015/10/27 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
WordPress中用于获取文章作者与分类信息的方法整理
2015/12/17 PHP
Mootools 1.2教程 事件处理
2009/09/15 Javascript
分享网页检测摇一摇实例代码
2016/01/14 Javascript
javascript基础知识分享之类与函数化
2016/02/13 Javascript
基于vue.js轮播组件vue-awesome-swiper实现轮播图
2017/03/17 Javascript
jQuery实现在HTML文档加载完毕后自动执行某个事件的方法
2017/05/08 jQuery
jQuery上传插件webupload使用方法
2017/08/01 jQuery
微信小程序tabBar底部导航中文注解api详解
2017/08/16 Javascript
基于jquery实现左右上下移动效果
2018/05/02 jQuery
vue 2.1.3 实时显示当前时间,每秒更新的方法
2018/09/16 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
详解Vue.js3.0 组件是如何渲染为DOM的
2020/11/10 Javascript
详解python中requirements.txt的一切
2017/03/03 Python
python3操作mysql数据库的方法
2017/06/23 Python
pandas系列之DataFrame 行列数据筛选实例
2018/04/12 Python
python中时间模块的基本使用教程
2019/05/14 Python
详解python中的time和datetime的常用方法
2019/07/08 Python
Python中url标签使用知识点总结
2020/01/16 Python
html5 外链式实现加减乘除的代码
2019/09/04 HTML / CSS
King Apparel官网:英国街头服饰品牌
2019/09/05 全球购物
电气个人求职信范文
2014/02/04 职场文书
《母亲的恩情》教学反思
2014/02/13 职场文书
高级销售求职信
2014/02/21 职场文书
房地产财务部员工岗位职责
2014/03/12 职场文书
服务宗旨标语
2014/07/01 职场文书
小学生植树节活动总结
2014/07/04 职场文书
经典毕业生求职信
2014/07/12 职场文书
计划生育诚信协议书
2014/11/02 职场文书
高中生军训感言
2015/08/01 职场文书