javascript 面向对象基础(二) 包装对象原型链

来源:互联网 发布:网络电视哪种好 编辑:程序博客网 时间:2024/06/05 14:27
/** * 工厂方式与构造函数 * 工厂方式:封装函数 * 当new去调用一个函数:这个时候函数中的this就是创建出来的对象,而且函数中的返回值直接就是this(隐式返回) * new后面的函数就是构造函数 * * 原型:去改写对象下面公用的方法或者属性,让公用的方法或者属性在内存中存在一份(提高性能) * prototype:写在构造函数的下面 *面向对象高级部分 * 不要修改或者添加系统对象下面的方法和属性 * * 包装对象 * 基本类型都有自己对应的包装对象 * null undefined没有 * 原型链 * 实例对象与原型之间的链接,叫做原型链 *   _proto_(隐式链接) *    Object对象类型是原型链的最外层: Object.prototype */// 包装对象理解1var str = 'hello';str.charAt(0);//基本类型会找到对应的包装对象类型,然后包装对象把所有的属性和方法给了基本类型,然后包装对象消失String.prototype.lastValue = function(){return this.charAt(this.length-1);}str.lastValue()//o;// 包装对象理解2var str = "hello";str.name = 10;//创建一个包装对象后消失alert(str.name);//创建一个新的包装对象 所以是:undefined//原型链理解1function arr(){}arr.prototype.name = 10;var t = new arr();alert(t.name);//10//原型链理解2function arr(){this.name = 20; //this->t}arr.prototype.name = 10;var t = new arr();alert(t.name);//20 原型链从里向外找,找到后就不找了所有为20//原型链理解3function arr(){}Object.prototype.name = 30;var t = new arr();alert(t.name);//30 

0 0
原创粉丝点击