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 特性检测并非浏览器检测
Jan 15 Javascript
根据对象的某一属性进行排序的js代码(如:name,age)
Aug 10 Javascript
jquery插件之easing使用
Aug 19 Javascript
基于jquery的跨域调用文件
Nov 19 Javascript
JS弹出对话框返回值代码(asp.net后台)
Dec 28 Javascript
在jQuery中 常用的选择器介绍
Apr 16 Javascript
利用js实现在浏览器状态栏显示访问者在本页停留的时间
Dec 29 Javascript
javascript框架设计之种子模块
Jun 23 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
Feb 17 Javascript
微信小程序用户信息encryptedData详解
Aug 24 Javascript
如何获取vue单文件自身源码路径
May 06 Javascript
js 实现验证码输入框示例详解
Sep 23 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和ACCESS写聊天室(五)
2006/10/09 PHP
一个PHP实现的轻量级简单爬虫
2015/07/08 PHP
thinkPHP分页功能实例详解
2017/05/05 PHP
JS 文件本身编码转换 图文教程
2009/10/12 Javascript
js中事件的处理与浏览器对象示例介绍
2013/11/29 Javascript
JS阻止冒泡事件以及默认事件发生的简单方法
2014/01/17 Javascript
javascript操纵OGNL标签示例代码
2014/06/16 Javascript
JS随机调用指定函数的方法
2015/07/01 Javascript
实例分析nodejs模块xml2js解析xml过程中遇到的坑
2017/03/18 NodeJs
React Native 环境搭建的教程
2017/08/19 Javascript
js中时间格式化的几种方法
2018/07/22 Javascript
JavaScript私有变量实例详解
2019/01/24 Javascript
echarts实现词云自定义形状的示例代码
2019/02/20 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
手把手教你如何编译打包video.js
2020/12/09 Javascript
[01:09]2014DOTA2国际邀请赛 TI4西雅图DOTA2 中国美女coser加油助威
2014/07/20 DOTA
[00:27]DOTA2战队VP、Secret贺新春
2018/02/11 DOTA
[23:18]Spirit vs Liquid Supermajor小组赛A组 BO3 第二场 6.2
2018/06/03 DOTA
Python 字典dict使用介绍
2014/11/30 Python
python编写分类决策树的代码
2017/12/21 Python
特征脸(Eigenface)理论基础之PCA主成分分析法
2018/03/13 Python
Python中staticmethod和classmethod的作用与区别
2018/10/11 Python
python得到qq句柄,并显示在前台的方法
2018/10/14 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
opencv python 图像轮廓/检测轮廓/绘制轮廓的方法
2019/07/03 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
2019/08/05 Python
python numpy中cumsum的用法详解
2019/10/17 Python
将tensorflow模型打包成PB文件及PB文件读取方式
2020/01/23 Python
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
写一个方法,输入一个文件名和一个字符串,统计这个字符串在这个文件中出现的次数
2016/04/13 面试题
《雕塑之美》教学反思
2014/04/24 职场文书
大专生找工作自荐书
2014/06/10 职场文书
员工培训协议书
2014/09/15 职场文书
湖南省召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
出国留学英文自荐信
2015/03/25 职场文书
详解Python描述符的工作原理
2021/06/11 Python