Javascript对象创建过程:
JavaScript语言没有类的概念,除了基本类型(Number、String、booleans、null和undefined)之外,一切都是对象。
- 创建一个简单的对象,可以理解为空对象
- 将隐藏的__proto__属性指向构造函数的prototype对象
- 执行构造函数,并为构造函数中this提到的创建新的对象。
Javascript动态属性和原型属性:
Javascript创建一个新的对象时,只会为“this提到的创建新的对象”在堆里面分配内存空间,而__proto__属性所对应对象(就是构造函数的prototype对象)其实是一个共享对象。所有创建新对象都会共享这个prototype对象。当访问新对象的属性时,如果新对象本身不含有此属性(含有此属性表示构造函数在用this提及的属性,或对象动态创建属性,可以用hasOwnProperty判断),就会访问共享的prototype对象中含有的属性。
说了这么多,还是没说到重点,所以神奇的重点是:
我们自己定义的对象,如果是在构造函数的是prototype对象定义属性和方法,这些属性和方法将会被所有通过这个构造函数new的对象共享。但这些共享的属性和方法是不能被改变的。我们改变对象的某个属性时,其实是为对象创建一个动态属性。这时才为这个对象属性分配空间。这就是javascript对象的奥秘。
分享到:
相关推荐
JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计JavaScript程序设计...
本资源是智能社原创新版JavaScript视频教程全集,共11G。适用于想要系统学习JavaScript的初学者和进阶者。本教程从基础语法、DOM操作、事件处理、Ajax等方面全面讲解了JavaScript的核心知识点,同时结合实际案例进行...
JavaScript网页设计作品是一种常见的互联网应用,它通过使用JavaScript语言来增强网页的交互性和动态性,为用户带来更丰富的浏览体验。在这个压缩包中,我们很可能找到了一个完整的网页项目,其中包括了设计精美的...
"JavaScript设计模式与开发实践.pdf" 本书《JavaScript设计模式与开发实践》是JavaScript语言的设计模式和开发实践的指南,旨在帮助初、中、高级Web前端开发人员和想往架构师晋级的中高级程序员,掌握JavaScript...
JavaScript是一种广泛...总的来说,"JavaScript程序设计基础教程(第2版)_习题答案"涵盖了JavaScript的基础知识和现代特性,通过解答习题,学习者将能够熟练掌握JavaScript编程,从而能够创建交互式的网页和应用程序。
javascript
在标签中再次强调了“【原创】javascript 飞机 雷电”,原创性表明这是作者独立创作的作品,可能包含其个人独特的设计思路和编程风格。这也意味着游戏可能不完整,因为它被标记为“未完成版”。通常,一个游戏的开发...
在"JavaScript动态网页设计"这个主题中,我们将深入探讨JavaScript的核心概念、语法特性以及如何利用它来创建引人入胜的动态网页。 1. **JavaScript基础**:JavaScript是一种解释型、基于原型的对象导向语言,其...
无论你是初学者还是经验丰富的开发者,都能从中受益匪浅,提升自己的JavaScript技能,从而更好地应对现代Web开发的挑战。 总之,这本书覆盖了JavaScript的各个方面,从基础到高级,从理论到实践,是每个JavaScript...
这些都需要深入理解JavaScript的数据结构、循环、条件判断等基本概念,以及可能的算法设计。 总的来说,这个JavaScript小游戏展示了JavaScript在Web游戏开发中的强大功能,涉及了DOM操作、事件处理、Canvas绘图、...
基于javascript的web页面设计
在本项目中,"Web前端网页设计作业-个人网页(html+css+javascript)"是一个适合初学者的实践项目,旨在帮助学习者掌握Web前端开发的基本技能。这个项目包含了多个页面,如个人主页、个人博客、轮播相册、魔方相册、...
这其实是我的期末作业,上传到网上是为了造福广大计算机专业的同学们∠( ᐛ 」∠)_ 网页共分为五个子网页,分别为: 1.登录页面 2.主页 3.购物车 4.留言板 5....其中主页完成度最高,可以单独拿出来使用(不过需要删掉...
javascript经典电子教案,初学者的必备武器,老手的查询资料。
本教程“JavaScript动态网页设计经典实例教程”旨在通过一系列实用的示例,帮助学习者深入理解和掌握JavaScript在网页设计中的应用。 JavaScript的核心在于其灵活性和交互性,它允许网页对用户的操作做出实时响应,...
《JavaScript动态网页设计经典实例教程》是一本专为网页开发者设计的教程,旨在通过实例教学,帮助读者掌握JavaScript在创建动态网页中的应用。JavaScript是一种广泛使用的客户端脚本语言,它在网页设计中扮演着至关...
综合运用HTML+CSS+JavaScript技术。 2.1 系统模块划分 网页的模块主要由主页、栏目页、商品详情页、轮播页、个人信息登录页面、秒杀页、购物车、注册和登录、咨询跳转到微信和QQ页、流动广告、弹窗广告等
"JavaScript网页设计300例"很可能是包含300个不同示例的教程集合,旨在帮助学习者通过实践理解并掌握JavaScript的基本概念和高级技巧。这个教程可能涵盖了从基础语法、变量声明、数据类型到函数、对象、DOM操作、...