![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript提高
文章平均质量分 71
JJ_Smilewang
这个作者很懒,什么都没留下…
展开
-
执行上下文与执行上下文栈
① 变量声明提升:通过var 定义(声明)的变量,在定义语句之前就可以访问到,值为undefined;② 函数声明提升:通过function声明的函数,在之前就可以直接调用,值:函数定义(对象)那么问题来了:变量提升和函数提升是如何产生的呢?这就涉及到执行上下文的相关知识了...JS代码根据位置可以分为:全局代码 和 函数(局部)代码。从而执行上下文也就分为全局执行上下文和函数执行上下文。① 在执行全局代码前,将window确定为全局执行上下文② 对全局数据进行预处理(预解析): 1)var定义的原创 2022-07-12 14:00:00 · 298 阅读 · 0 评论 -
instanceof的使用
instanceof的作用:instanceof是用来判断左边的对象是否为右边构造函数的实例。instanceof的是如何判断的?① 语法:A instanceof B ,A是实例对象,B是构造函数② 如果B函数的显式原型对象(prototype)在A对象的原型链(__proto__链)上,则返回true,否则返回false。...原创 2022-07-11 14:00:00 · 1551 阅读 · 1 评论 -
函数的prototype属性(原型对象)
每个函数都有一个prototype属性,它默认是一个空的Object的实例对象(即称为:原型对象),而原型对象中有一个属性constructor,它指向函数对象。这说明(构造)函数和它的原型对象相互引用。Type表示的是构造函数,它其中有个属性prototype,而这个属性指向这个函数的prototype对象,而这个对象有个属性constructor,它是指回这个构造函数Type的,即是相互引用关系。① 每个函数function都有一个prototype,即显式原型② 每个实例对象都有一个__prot原创 2022-07-09 18:00:00 · 2462 阅读 · 3 评论 -
原型链的认知
原型链,顾名思义,其实就是通过原型组成的一条链,且是隐式原型__proto__组成的,用于访问查找一个对象的属性的。通过上篇文章,可以知道任何函数都有一个属性prototype(显式原型),而任何实例对象也都有一个隐式原型__proto__,并且实例对象的隐式原型等同于其构造函数的显式原型。但是通过打印发现构造函数的原型对象prototype中也存在隐式原型,这说明构造函数的原型对象是一个实例对象,那它是谁的实例呢?是Object对象的实例。原型链,别名是隐式原型链。是在访问一个对象的属性时,首先是在自身属原创 2022-07-10 14:00:00 · 223 阅读 · 1 评论