我的账户
猩码学苑

专注C++开发菁英教育

亲爱的游客,欢迎!

已有账号,请

如尚未注册?

康利20221125JS高级03

[复制链接]
智商不在服务区 发表于 2022-11-27 19:38:37 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
一、学习内容:

        方法过载
                如果方法挂在this上,那么每一个new出来的实例对象都有一份方法的副本,如果new100个实例对象,那么就有100个方法副本,称为方法过载
                解决方法过载:添加共享方法----使用原型
        原型与原型链
                原型:
                        特点
                                每个函数(特指构造函数),都有一个属性prototype(显示原型)原型,它的值是一个对象,只要往这个对象中添加方法,这些方法都会被new出来的实例对象共享
                                实例对象:都有一个属性__proto__隐式原型(新版本浏览器显示[[prototype]]),等于自构造函数的显示原型:prototype
                                原型对象里面:有一个属性constructor,指向构造函数自己本身
                        原型的作用:添加共享方法
                        分类
                                显式原型  prototype
                                隐式原型   __proto__  [[prototype]]
                原型链
                        特点
                                原型prototype本身也是一个实例对象,也有自己的构造函数,他的构造函数是object,原型prototype也有属性__proto__隐式原型,指向object的显示原型
                                Object的显式原型prototype也是实例对象,也有`__proto__`,指向null
                                object的prototype上也有constructor,指向构造函数object自己本身
                        作用:实例对象去查找方法,先找自己,自己没有的话沿着原型链去找,找到后使用,找不到的话会报错
        this指向
                1:全局中的this---window
                2:函数中的this---window,谁调用指向谁
                3:对象方法中的this---对象:因为对象来调用的,谁调用指向谁
                4:构造函数中的this---指向实例对象
                5:定时器中的this---window
                6:事件处理函数中的this---事件源
                7:箭头函数中的this---上一级,箭头函数没有自己的this指向,他的this绑定定义函数所处的作用域
        修改this的指向
                call()和apply()
                        这两个方法都可以修改this的指向
                        这两个方法都可以调用函数,在调用函数的同时,可以指定this的指向
                        函数名()        ---谁调用就指向谁
                        函数名.call(this对象,实参1,实参2)---不确定个数的实参,第一个参数是新的this,后面的参数按照所需要的实参依次传入
                        函数名.apply(this对象,[实参1,实参2])        ---两个参数,第一个参数是新的this指向,第二个参数为一个数组,数组中传入实参
                        这两种可以对this指向进行多次改变
                bind()
                        把sum函数的this,绑定到一个目标对象上,会执行这个函数的代码,返回一个新的函数
                        此后,只要调用这个新函数,新函数的this永远指向了绑定的目标对象
                        只能改变一次this指向

回复

使用道具 举报

关注0

粉丝0

帖子68

发布主题
大家都在学
课堂讨论
一周热帖排行最近7x24小时热帖
关注我们
专注C++菁英教育

客服电话:18009298968

客服时间:9:00-21:00

猩码学苑 - 专注C++开发菁英教育!( 陕ICP备2025058934号-1 )

版权所有 © 陕西菁英数字科技有限公司 2023-2026