[Object]面向对象编程(高程版)(0)原型方法能调用实例方法?

本文探讨了JavaScript中对象与原型对象的关系,通过实例演示如何在原型方法中访问实例方法,并解释了实现原理。同时,文章还附带介绍了JavaScript的基本数据类型、操作符及流程控制语句。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作者:zccst

按照我的理解,实例方法在对象中,原型方法在原型对象中。对象与原型对象之间是通过[[prototype]]指针建立起关系的。

问题是:怎么可以逆过来,原型对象方法里访问实例方法?

经过下面的例子可以看出:[color=red]是this在起作用[/color]。
分析:对象是 new Person(构造函数)得出的。所以this作用域中,即包含实例属性,也包含实例方法。而原型对象中使用的this正式该对象,所以在原型中可以调用实例属性和实例方法。


function Person(name){
this.name = name;
this.sayName = function(){
alert("privilege:"+this.name);
}
}
Person.prototype.sayNameInpt=function(){
alert("prototype:"+this.name);
}
Person.prototype.sayNameInpt2=function(){
console.log(this);
/*
name: "js"
sayName: function (){}
__proto__: Person
不能看出:this就是new出来的实例对象。所以原型对象中的方法也能调用。
*/
console.log('aaaaaaaaa'+this.name);//可以访问实例属性
this.sayName();//可以访问实例方法
}

var o = new Person("js");
//o.sayName();
//o.sayNameInpt();
o.sayNameInpt2();



一,五种基本数据类型和一种复合数据类型。

五种基本数据类型
1,undefined
2,null
3,string
4,number
5,boolean
6,复合数据类型(Object,Array,Date,正则,Function,基本包装类型,内置对象)

二,操作符(一元、二元、三元)
1,一元操作符
2,位操作符
3,不二操作符
4,乘性操作符
5,加性操作符
6,关系操作符
7,相等操作符
8,条件操作符(三目)
9,复制操作符
10,逗号操作符

三,流程控制语句
break和continue



四,函数


如果您觉得本文的内容对您的学习有所帮助,您可以微信:
[img]http://dl2.iteye.com/upload/attachment/0109/0668/fb266dfa-95ca-3d09-b41e-5f04a19ba9a1.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值