- 博客(9)
- 收藏
- 关注
原创 闭包面试题
//第一题 var name = "The Window"; var object = { name: "My Object", getNaneFunc: function() { return function() { return this.name; }; } }; ..
2021-12-14 21:21:50 218
原创 闭包的生命周期,缺点,内存溢出和泄漏
闭包的含义 如何产生闭包? 当一个嵌套的内部(子)函数引用了嵌套的外部(父)函数的变量(函数)时,就产生了闭包。 闭包到底是什么? 使用chrome调试查看 理解一:闭包是嵌套的内部函数(绝大部分人) 理解二:包含被引用变量(函数)的对象(极少数人) 注意:闭包存在于嵌套的内部函数中 产生闭包的条件? 函数嵌套 内部函数引用了外部函数的数据(变量/函数) 执行外
2021-12-14 21:19:29 580
原创 作用域与作用域链
理解 就是一块“地盘”,一个代码段所在的区域 它是静态的(相对于上下文对象),在编写代码时就确定了 分类 全局作用域 函数作用域 没有块作用域(ES6有了块作用域) 作用 隔离变量,不同作用域下同名变量不会有冲突 作用域与执行上下文...
2021-12-14 21:12:53 874
原创 执行上下文
代码分类(位置) 全局代码 函数(局部)代码 全局执行上下文 在执行全局代码之前将window确定为全局执行上下文 对全局数据进行预处理 var定义的全局变量==>undefined,添加为window的属性。 function声明的全局函数==>赋值(fun),添加为window的方法。 this==>赋值(window)。 开始执行全局代码 函数执行上下文 在调用函数,准备执行函数体
2021-12-12 21:40:16 552
原创 变量和函数---声明提升
变量声明提升 通过var定义(声明)的变量,在定义语句之前就可以访问到 值:undefined,存在window中 函数声明提升 通过function声明的函数,在之前就可以直接调用 值:函数定义(对象) ...
2021-12-12 21:36:09 147
原创 原型链--隐式原型和显示原型的作用及特点
原型链访问一个对象的属性时 :先在自身属性中查找,有则但返回 。 如果没有,再沿着隐式原型__proto__这条链接向上查找,找到则返回。 如果最终没有找到,返回undefined。别名:隐式原型链作用:查找对象的属性(方法)隐式原型和显示原型的作用及其特点 所有函数的__proto__都是一样的。 实例对象的隐式原型等于构造函数的显示原型。 函数的显示原型指向的对象 :默认是空的Object实例对象(但是Object不满足)。 所有函数都是Func
2021-12-11 21:09:40 594
原创 Jscript原型
原型 函数的prototype属性 每个函数都有一个prototype属性,它默认指向一个Object空对象(即称为:原型对象) 原型对象中有一个属性constructor,它指向函数对象 给原型对象添加属性(一般都是方法)==>实例对象可以访问 作用:函数的所有实例对象自动拥有原型中的属性(方法)显示原型和隐式原型 每一个函数function都有prototype,为显示原型(属性) 每个实例对象都有一个__pro__ 可称为隐.
2021-12-11 20:59:55 434
原创 JavaScript---JSON
JSON的概论:js中的对象只有js自己认识,其他的语言都不认识 JSON就是一个特殊格式的字符串,这个字符串可以被任意的语言所识别,并且可以转换为任意语言的对象,JSON在开发中主要用来数据的交互JSON的语法:Script Object Notation JS对象表示法 JSON和JS对象的格式一样,只不过JOSON字符串中的属性名必须加双引号,其他的和JS语法一致JSON分类:对象 { } 数组 [ ]JSON中允许的值:字符串 数值 布尔值 null 对象 数组
2021-12-07 22:13:03 280
原创 mouseenter和mouseover 鼠标事件的区别
mouseenter,mouseover鼠标事件当鼠标移动到元素上时就会触发mouseenter事件 类似mouseover,它们两者之间的区别是 mouseover鼠标经过自身盒子会触发,经过子盒子还会触发。mouseenter 只会经过自身盒子触发 之所以这样,就是因为mouseenter不会冒泡。...
2021-12-07 16:06:01 148
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人