js中关于constructor与prototype的理解
2024-10-18 09:35:45
1.①__proto__和constructor属性是对象所独有的;② prototype属性是函数所独有的,因为函数也是一种对象,所以函数也拥有__proto__和constructor属性。
2.__proto__属性的作用就是当访问一个对象的属性时,如果该对象内部不存在这个属性,那么就会去它的__proto__属性所指向的那个对象(父对象)里找,一直找,直到__proto__属性的终点null,然后返回undefined,通过__proto__属性将对象连接起来的这条链路即我们所谓的原型链。
3.prototype属性的作用就是让该函数所实例化的对象们都可以找到公用的属性和方法,即a1.__proto__ === A.prototype。
4.constructor属性的含义就是指向该对象的构造函数,所有函数(此时看成对象了)最终的构造函数都指向Function()。
function A() {}
A.prototype.name = '1';
var a1 = new A();
var a2 = new A(); console.log(a1.name); // 1
console.log(a2.name); // 1 a1.__proto__.name = '2';
a1.name = 3;
// console.log(a1.__proto__); console.log(a1.name); // 3
console.log(a2.name); // 2 delete a1.name; a2.__proto__.name = '4';
console.log(a1.name); // 4
console.log(A.prototype.constructor); // A
最新文章
- maven中文乱码问题——打包错误
- SourceTree克隆仓库时,总是提示输入密码
- CSS3 display:flex和display:box有什么区别?
- Android学习——百度地图开发定位与显示Demo
- 2014/08/24——升级stepbystep修复tc不刷新问题并加入杭电bc
- uva 10652 Board Wrapping (计算几何-凸包)
- Linux JDK 的安装卸载
- jQuery 插件 的this 指向问题(实战)
- Struts2(七) Struts2访问Servlet的API
- mongodb的db.collection is not function
- android之官方导航栏ActionBar(三)之高仿优酷首页
- AutoMapper,对象映射的简单使用
- 在Ubuntu16.04下面安装asterisk网络电话交换机服务器
- Windows下MongoDB安装配置
- 【RF库Collections测试】Reverse List
- Sequelize-nodejs-4-Model usage
- 【Java 线程的深入研究4】ThreadPoolExecutor运转机制详解
- 【运维技术】windows安装apache服务器,实现域名对应端口的解析跳转
- *SCM-MANAGERtomcat寄宿使用
- Vue Devtools--vue调式工具