JavaScript里,对象的属性和方法支持4种不同的类型,
第一种类型就是前面所说的私有类型,它的特点是对外界完全不具备访问性,要访问它们,只有通过特定的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.z = 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>
分享到:
相关推荐
4. **JavaScript**:`.js`文件用于前端交互和增强用户体验。 5. **数据库连接和配置**:可能有`.config`或`.inc`文件,包含数据库连接信息和其他系统配置。 6. **数据库文件**:如`.mdb`(Access数据库)或`.sql`...
总的来说,“Nodejs学习点滴”这篇博文可能涵盖了Node.js的基础知识,如模块系统、异步编程,以及如何使用构建工具和第三方库来处理特定任务。`build.js`和`DomTree.js`这两个文件分别代表了项目构建和HTML解析的...
《梦颜时光记录点滴心情经历网站html源码》是一份专为记录个人生活点滴和心情体验而设计的网站源码资源。这份源码是开发者们进行网页设计、学习前端技术或者构建个人情感日记网站的理想起点。它包含了丰富的HTML元素...
"点滴积累1" 本文档主要讲述了程序员的职业发展、技术栈、学习方法和思想方式等方面的知识点。 1. career development * 程序员的职业发展可以分为基础技术、工具、产品、项目等几个方面。 * 世界需要不同类型...
总的来说,阿杰网页版记事本4.2利用HTML和JavaScript的力量,创造了一个功能丰富的个人管理平台,不仅有基础的记事功能,还涵盖了多媒体播放和财务管理,充分体现了Web技术的便利性和实用性。对于需要一个集成化解决...
js库简介js-library记录个人成长的点滴,欢迎大家进行技术交流文件结构-- arithmetic 【算法基础系列】-- booklist 【前端书籍系列】-- designPattern 【设计模式】-- flutter 【flutter系列】-- interviewQuestion ...
在`js`文件夹中,可能包含实现了倒计时功能、评论提交和其他交互逻辑的JavaScript脚本。例如,倒计时功能可能通过设置定时器更新页面上的时间显示,评论功能则可能通过AJAX与服务器进行异步通信,实现实时更新。 ...
### JS小项目需求分析知识点详解 #### 一、项目背景与目标 - **项目名称**:Believe - **系统编号**:001 - **编写目的**:本项目旨在构建一个支持朋友互动交流的Web平台,通过该平台用户能够进行交友、分享生活...
总的来说,证券从业资格考试是一个基础性的认证,旨在检验考生对证券市场基础知识的掌握。通过系统的复习和有效的备考,大多数考生都能顺利通过。对于那些希望在金融领域进一步发展的人来说,这只是一个起点,后续...
此外,了解基础的HTML、CSS和JavaScript也是必要的,因为这些技术常常与ASP结合使用,用于实现页面布局和交互效果。对于数据库操作,如果系统中涉及到数据库存储,那么了解SQL语言也会很有帮助,尤其是与ASP配合使用...
《Python核心编程3》是Python编程领域的一本经典著作,主要涵盖了Python语言的基础、进阶以及实际应用等多个方面。在阅读这本书的过程中,我们能够深入理解Python语法、数据结构、函数、模块、面向对象编程等核心...
对于有一定技术基础的用户,还可以通过修改CSS样式、JavaScript代码等方式对模板进行定制,打造出独一无二的个性化博客。 总的来说,【情侣博客模板回忆】凭借其美观的界面、实用的功能和良好的可扩展性,为情侣们...
这个项目的出现,旨在为开发者提供一个基础的博客平台,用于展示个人的技术文章、心得分享或者生活点滴。通过学习和研究这个项目,我们可以深入理解JavaScript在实际Web开发中的应用,以及如何与HTML等前端技术协同...
JavaScript(JS)是提升用户体验的关键,它允许网页动态交互。在双栏博客模板中,JS 可能用于实现下拉菜单、滚动动画、评论系统、搜索功能等。例如,可以使用 jQuery 库简化 DOM 操作,或者使用 AJAX 实现异步加载,...
本项目“Java源代码-ssm+vue开发美好生活日志网”是一个综合性的Web...对于基础较好的学习者,可以在本项目的代码基础上进行扩展,例如增加社交分享功能、实现多语言支持或者优化用户界面设计,以实现更多创新功能。
Folk的目标是:让您可以轻松地与世界分享您的点滴。 Folk使用世界流行的javascript语言开发,因此可以同时运行于node和asp(非.net)。其中,node版本支持sqlite(推荐)和mysql两种数据库,而asp版本则同时支持access、...
2. **HTML/CSS/JS基础**:通过修改模板文件,学习基本的网页结构、样式设计和交互实现。 3. **PHP基础**:理解WordPress中的PHP函数和钩子,以及如何用PHP与数据库交互。 4. **响应式设计**:该主题可能已具备响应式...
以语音的方式记录生活点滴。替代文字日记的理由是我觉得语音可以记录更多的信息,而不仅仅是文字。 功能 登录 录音、播放录音(最长一分钟) 上传语音日记 查看语音日记 搜索语音日记 删除语音日记 其他 这个小程序...
从标签“JS”我们可以推测,该主题可能使用了大量的JavaScript技术来实现一些动态效果,比如滑动展示、弹窗交互等。JavaScript作为一种广泛应用于网页开发的脚本语言,在提高用户体验方面发挥着重要作用。通过合理...
需要有一定的HTML、CSS和JavaScript基础才能更好地理解和使用这个资源。 在使用这个资源时,需要确保已经正确引入了jQuery库,否则可能会出现功能无法正常使用的情况。 该资源仅提供了基本的发表说说和评论功能,...