JS中对象+构造函数+原型对象谈恋爱了嘛。

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
<script>
	function Person(myName,myAge)
	{
		this.name=myName;
		this.age=myAge;
		this.currentType="构造函数中的属性";
		this.say=function()
		{
			console.log("构造函数里面的方法");
		}
	}
	Person.prototype=
	{
		currentType:"原型里面的属性",
		say:function()
		{
			console.log("原型里面的方法");
		}
	};
	let obj1=new Person("cyg",20);
	obj1.say();
	console.log(obj1.currentType);
    let obj2 = new Person("zs", 44);
    obj2.say();
    console.log(obj2.currentType);
    /**
     * prototype的特点:存在在原型对象里面的属性与方法可以被构造函数的所有对象所共享.
     * 如果原型与构造函数的属性与方法相同,优先级执行的是构造函数里面的,如果没有到原型里面找.
     */
</script>
</head>
<body>
</body>
</html>

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
<script>
	function Person(myName, myAge)
	{
		 this.name = myName;
            this.age = myAge;
	}
	 let obj1 = new Person("lnj", 34);
	 /* 1.每个"构造函数"中都有一个默认的属性, 叫做prototype
          prototype属性保存着一个对象, 这个对象我们称之为"原型对象"*/
	 console.log(Person.prototype);//构造函数里面的prototype指向了对象(原型对象)
	  /*2.每个"原型对象"中都有一个默认的属性, 叫做constructor
          constructor指向当前原型对象对应的那个"构造函数"
          */
	  console.log(Person.prototype.constructor);//原型对象里面的constructor属性指向了函数(当前原型对象对应的那个"构造函数")
	 /*3.通过构造函数创建出来的对象我们称之为"实例对象"
          每个"实例对象"中都有一个默认的属性, 叫做__proto__
          __proto__指向创建它的那个构造函数的"原型对象"
        */
	  console.log(obj1.__proto__);//实例对象的__proto__指向了对象(构函数里面的原型对象)
	    
</script>
</head>
<body>
</body>
</html>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贵哥的编程之路(热爱分享)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值