JavaScript学习笔记(一)

本文详细探讨了JavaScript中原型链的工作原理,包括对象、构造函数、原型属性之间的关系,以及如何利用这些特性进行高效开发。

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

1.js的原型链,对象,构造函数之间的关系,先从练习开始

   test1是函数原型,ex1,ex2则是这个函数的实例,从上述结果不难看出prototype是专属函数原型test1的属性,而_proto_则是函数实例化后ex1,ex2的属性,如果对这几个东西用图形展示的话,应该是下面这张

     好,我们在了解完上述的关系后,再看一下另外的练习结果

从实例化的ex1中,再加一个子属性a(函数),它可以再用这个,而它的函数原型则不受影响,而如果在它的函数原型里面再加一个子属性b,加完之后,不仅自身会发生变化,而且之前它的实例ex1,ex2都会自动拥有这种属性,举个不恰当的例子:就是甲,有个孩子乙,甲在生下乙后,甲之前拥有的各种能力,乙会自动拥有,而乙在生下之后,再学习到的新能力,它的父亲甲就不能拥有,但是它父亲甲再学习到的能力就可以自动传给乙。

而由这个属性引申出来的优势有时对我们开发有很大帮助,虽然大多数我们不会使用函数实例,但是我们经常会给一个定义好的函数再加一个prototype.a = function(){...}什么的,方便之后的操作,如果在函数定义的时候就把a加进去,那就是javascript的闭包了。

以上就是我对这几个属性的初步理解,如果以后了解更深入了,我再补充下

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值