Javascript 对象的解释


Posted in Javascript onNovember 24, 2008

所有的构造器都是对象,而并非所有的对象都是构造器.每个构造器都有一个用来实现原型继承、共享属性的Prototype属性。对象通过new 表达式创建;比如,new String("A String") 创建了一个String对象。没有通过new而直接调用构造器将有返回值,返回的类型将取决于构造器。例如String("A String")产生一个原始的类型的字符串而不是一个对象。
ECMAScript支持基于原型的继承。每个构造器都有一个与之关联的原型,而且通过此构造器创建的对象都有一个与构造器原型关联的隐式引用(称为,对象的原型)。进一步说,一个原型可能有一个对其原型的非空隐式引用……,这被称为,原型链。当一个引用指向对象的属性,这个引用指向原型链中的第一个对象的以此为名的属性。换句话说,第一次,这个直接关联的对象,将为这个属性被检查。如果这个对象包含以此为名的属性,这个属性就是引用指向的属性。如过这个对象不包含以此为名的属性,那么这个对象的原型将会被继续检查……
原文:
Object
ECMAScript does not contain proper classes such as those in C++, Smalltalk, or Java, but rather,supports constructors which create objects by executing code that allocates storage for the objects and initialises all or part of them by assigning initial values to their properties. All constructors are objects,but not all objects are constructors. Each constructor has a Prototype property that is used to implement prototype-based inheritance and shared properties. Objects are created by using constructors in new expressions; for example, new String("A String") creates a new String object. Invoking a constructor without using new has consequences that depend on the constructor. For example,String("A String") produces a primitive string, not an object.
ECMAScript supports prototype-based inheritance. Every constructor has an associated prototype, and every object created by that constructor has an implicit reference to the prototype (called the object's prototype) associated with its constructor. Furthermore, a prototype may have a non-null implicit reference to its prototype, and so on; this is called the prototype chain. When a reference is made to a property in an object, that reference is to the property of that name in the first object in the prototype chain that contains a property of that name. In other words, first the object mentioned directly is examined for such a property; if that object contains the named property, that is the property to which the reference refers; if that object does not contain the named property, the prototype for that object is examined next; and so on.

Javascript 相关文章推荐
JavaScript版代码高亮
Jun 26 Javascript
javascript flash下fromCharCode和charCodeAt方法使用说明
Jan 12 Javascript
Javascript表格翻页效果的具体实现
Oct 05 Javascript
鼠标移到图片上变大显示而不是放大镜效果
Jun 15 Javascript
JS获取单击按钮单元格所在行的信息
Jun 17 Javascript
JS实现在状态栏显示打字效果完整实例
Nov 02 Javascript
JS拉起或下载app的实现代码
Feb 22 Javascript
vue 利用路由守卫判断是否登录的方法
Sep 29 Javascript
详解vue 动态加载并注册组件且通过 render动态创建该组件
May 30 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
Jan 08 Javascript
vue实现带过渡效果的下拉菜单功能
Feb 19 Javascript
微信小程序实现选择地址省市区三级联动
Jun 21 Javascript
javascript脚本调试方法小结
Nov 24 #Javascript
createElement动态创建HTML对象脚本代码
Nov 24 #Javascript
javascript innerHTML、outerHTML、innerText、outerText的区别
Nov 24 #Javascript
javascript call和apply方法
Nov 24 #Javascript
仿校内登陆框,精美,给那些很厉害但是没有设计天才的程序员
Nov 24 #Javascript
javascript 贪吃蛇实现代码
Nov 22 #Javascript
js利用div背景,做一个竖线的效果。
Nov 22 #Javascript
You might like
php简单解析mysqli查询结果的方法(2种方法)
2016/06/29 PHP
yii2.0实现创建简单widgets示例
2016/07/18 PHP
PHP依赖注入(DI)和控制反转(IoC)详解
2017/06/12 PHP
php 调用百度sms来发送短信的实现示例
2018/11/02 PHP
jQuery代码优化 选择符篇
2011/11/01 Javascript
jQuery调用AJAX时Get和post公用的乱码解决方法实例说明
2013/06/04 Javascript
js动态往表格的td中添加图片并注册事件
2014/06/12 Javascript
js字符串引用的两种方式(必看)
2016/09/18 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
2016/11/10 Javascript
ES6中module模块化开发实例浅析
2017/04/06 Javascript
bootstrap栅格系统示例代码分享
2017/05/22 Javascript
jQuery each和js forEach用法比较
2019/02/27 jQuery
Vuex中的Mutations的具体使用方法
2020/06/01 Javascript
Vue移动端项目实现使用手机预览调试操作
2020/07/18 Javascript
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
python读文件逐行处理的示例代码分享
2013/12/27 Python
Python监控主机是否存活并以邮件报警
2015/09/22 Python
Python Requests 基础入门
2016/04/07 Python
PyQt5每天必学之组合框
2018/04/20 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
基于python3实现socket文件传输和校验
2018/07/28 Python
Python开发虚拟环境使用virtualenvwrapper的搭建步骤教程图解
2018/09/19 Python
Python常见数据结构之栈与队列用法示例
2019/01/14 Python
python 将日期戳(五位数时间)转换为标准时间
2019/07/11 Python
Python实现迪杰斯特拉算法过程解析
2020/09/18 Python
CSS3使用transition实现的鼠标悬停淡入淡出
2015/01/09 HTML / CSS
阿里健康官方海外旗舰店:阿里健康国际自营
2017/11/24 全球购物
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
2014大学生全国两会学习心得体会
2014/03/13 职场文书
士力架广告词
2014/03/20 职场文书
责任书格式范文
2014/07/28 职场文书
村当支部个人对照检查材料思想汇报
2014/10/06 职场文书
收款委托书
2014/10/14 职场文书
雨中的树观后感
2015/06/03 职场文书
利用python做数据拟合详情
2021/11/17 Python