js对象体系总结

  废话不多说,抛图一张。。。

  总结:  

  1. 所有的函数都有prototype属性。
  2. prototype属性本质上也是对象(实际上是Object的实例对象{ })----原型对象中也有一个__proto__属性,并且指向Object.prototype,但是Object.prototype中没有该属性。
  3. 原型对象中默认会有一个constructor属性,该属性指向原型所属的构造函数。
  4. 所有的函数都是Function的实例。
  5. Function也是自己的实例。
  6. 所有的实例对象中都有一个__proto__属性,该属性指向创建该实例对象的构造函数的原型。
  7. __proto__属性不可以在编程中使用,该属性不是标准,只是浏览器自己内部使用。

虽然所有的函数中都有prototype和__proto__属性,但是这两个属性不是在所有的情况下都有用:

prototype只有在实例化之后才有价值   new Foo()

__proto__只有作为普通函数才有价值    foo.call()

实例对象中也有__proto__,主要和函数中的__proto__做好区分

时间: 2024-12-24 05:26:05

js对象体系总结的相关文章

JQuery之JQuery的版本 JQuery入门 属性获取 JQuery就绪函数 JS文档就绪函数和JQuery文档就绪函数的区别 JS对象和JQuery对象的区别 关于$的使用 多个JS库的冲突解决方案

JQuery的版本 JQuery入门 属性获取 JQuery就绪函数 JS文档就绪函数和JQuery文档就绪函数的区别 JS对象和JQuery对象的区别 关于$的使用 多个JS库的冲突解决方案 JQuery的版本 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jQuery的版本</title> <

DOM对象和js对象以及jQuery对象的区别

一.DOM对象 文档对象模型简称DOM,是W3C组织推荐的处理可扩展置标语言的标准编程接口. DOM实际上是以面向对象方式描述的文档模型.DOM定义了表示和修改文档所需的对象.这些对象的行为和属性以及这些对象之间的关系. 通过DOM,可以访问所有的 HTML 元素,连同它们所包含的文本和属性.可以对其中的内容进行修改和删除,同时也可以创建新的元素. HTML DOM 独立于平台和编程语言.它可被任何编程语言诸如 Java.JavaScript 和 VBScript 使用. DOM对象,即是我们用

js对象浅拷贝和深拷贝详解

js对象浅拷贝和深拷贝详解 作者:i10630226 字体:[增加 减小] 类型:转载 时间:2016-09-05我要评论 这篇文章主要为大家详细介绍了JavaScript对象的浅拷贝和深拷贝代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文为大家分享了JavaScript对象的浅拷贝和深拷贝代码,供大家参考,具体内容如下 1.浅拷贝 拷贝就是把父对像的属性,全部拷贝给子对象. 下面这个函数,就是在做拷贝: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 var

多个jsp页面共享一个js对象的超级方法

一个jsp页面为A.jsp,在A.jsp中点击一个按钮打开另一个B.jsp页面.思路如下: 在A.jsp打开B.jsp的事件中,写入如下代码: 1 2 window.top['_CACHE'] = chatFrdList; window.top['_CACHE'][frdUserId] = frdUserId; 其中,chatFrdList定义为var chatFrdList = new Object(); frdUserId为一个用户的id. 那么,在B.jsp的一个事件中,就可以执行下面的操

js对象字面量属性间相互访问的问题 和 这个问题与执行环境的关系

对象字面量属性间无法相互访问的问题: 我曾经在定义一个对象时, 并出于复用性的考虑试图复用某些属性: // test 1 var person = { firstName : "Bill", lastName : "Gates", fullName : firstName + " " + lastName // 这里报错 } alert(person.firstName); alert(person.lastName); alert(person

创建Vue.js对象:我的第一个Vue.js输出信息

<!DOCTYPE html><html><head><meta charset=”utf-8″><title>Vue第一条信息</title><script src=”js/vue.js”></script></head><body><div id=”app”><p>{{ message }}</p></div> <script&g

js 对象与过程

仔细数数自己学js已有有一个多月了,然而自己看了很多视频,最终还是写不出什么.然后开始看书写小案例,感觉这样学,更能巩固和学习新知识,觉得此方法还不错,希望对新人有帮助.书上定义js是一种面向对象的动态脚本语言,它具有面向对象语言所特有的各种特性如封装,继承,多态等.(这里几个特性就已经够新手折腾了,反正我在此停留了许久),今天又接触到了js的对象,我用自己的语言说,js对象 是由数据对象(布尔,数值,字符串,等等)和函数对象组成. 今天又接触到了面向对象与面向过程.然后百度一下,有一句不雅的话

js对象的学习笔记(仅供参考)

一.面向对象语言的基本特征: 抽象.封装.继承.多态 封装:将抽象的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有通过被授权的操作(成员方法),才能对数据进行操作 继承:由一个或多个类得来类的类的属性和方法的能力,一个类可以继承(extends)父类中的(public/protect)属性和(public/protect)方法,继承可以解决代码复用问题 多态:编写能以多种方法运行的函数或方法的能力 JS对象类型:本地对象.宿主对象(浏览器对象).内置对象 本地对象:独立于宿主

JS对象和类

JS对象类别 内置对象 如Array Date Function 宿主对象 比如浏览器中的window 自定义对象 用户在代码中创建的 对象的构成 属性 按继承区分 自有属性 继承属性 对象原型中定义的属性 按类别分 数据属性 存取器属性 var o = { get name() {}, set name(value) {}, } 三个对象特性 对象原型 prototype 对象的类 class 对象的拓展标记 属性特性 数据属性特性 value,writable,enumerable,conf