JavaScript
文章平均质量分 50
weixin_43899552
这个作者很懒,什么都没留下…
展开
-
温故而知新:9.总结js的六大继承方式
重学javascript笔记1.原型继承核心:将子类的原型指向父类的实例实现原型继承原理:改变原型链的指向,让子类继承父类的私有属性和公有属性2.冒充对象继承原理:实例化父类 并对父类进行for in遍历 for in会遍历公有属性和私有属性 原理:拷贝了一份父元素的私有属性和公有属性3.借用构造函数继承原理:将实例替换父类的this缺点:只能继承父类的私有属性不能继承父类的公有属性4.组合继承(借用构造函数继承+原型继承)原理:通过call继承父类的私有属性再通过原型继承继承父类私有属性和公有属性但是原创 2021-05-25 10:10:25 · 266 阅读 · 0 评论 -
温故而知新:8.重学javascript笔记(js之单例模式和工厂模式)
重学javascript笔记单例模式单例模式把描述同一事物的属性和方法放在同一个内存空间下,起到分组作用,这样不同事物之间的属性即使属性名和方法名相同也互不影响,这种编码模式称之为单例模式。例: var persion1 = { name:'张三', age:18 } var persion2 = { name:'李四', age:18 } //persion1和...原创 2021-05-10 00:12:08 · 197 阅读 · 0 评论 -
温故而知新:7.重学javascript笔记(js之this关键字)
重学javascript笔记什么是this?如何区分this?什么是this?this英文翻译为“这个”,在js中,this代表当前行为执行的主体(执行上下文);js中的context代表的是当前行为执行的环境(区域)this指向谁和函数在哪定义和执行的都没有关系,只和它的执行主体有关。如何区分this?函数中的this是谁就看函数名称前面有没有点(.)有的话点(.)前面是谁this就是谁,没有的话this就是window。自执行函数中的this永远是window。给元素的某一个事件绑定原创 2021-05-06 23:23:56 · 57 阅读 · 0 评论 -
温故而知新:6.重学javascript笔记(js之关于作用域练习题)
重学javascript笔记休闲时刻之js作用域练习题图解:休闲时刻之js作用域练习题如题: function fn(){ var i = 10; return function(n){ console.log(n + (++i)) } } var f = fn() f(10) //21 f(20) //22 fn()(10) //21 fn()(20) //31题目上答案输出依次为:21,32,21,31图解:原创 2021-05-06 00:47:54 · 79 阅读 · 0 评论 -
温故而知新:5.重学javascript笔记(js之内存释放和作用域销毁)
重学javascript笔记一.浏览器垃圾回收机制。堆内存清理机制栈内存清理机制一.浏览器垃圾回收机制。堆内存清理机制谷歌浏览器会定时清理没被占用的变量,IE和火狐是引用计数的形式;这是;浏览器自动行为。下面是手动释放内存解释,手动释放内存就是把不常用的变量赋值为null即可。 图示: var obj = {name:'feiwu',age:25}, var obj1 = obj栈内存清理机制1)全局作用域只有当页面关闭的时候全局作用域才会被清理。2)私有作用域(只有函数执行才会原创 2021-04-30 01:02:01 · 229 阅读 · 0 评论 -
温故而知新:4.重学javascript笔记(js之如何查找上一级作用域)
重学javascript笔记一.如何查找上一级作用域?一.如何查找上一级作用域?查看当前 函数是在哪个作用域下定义的,那么它的上级作用域就是谁,和函数在哪执行的没有任何关系。 var num = 222; function fn(){ var num = 333; return function(){ console.log(num) }}var f = fn()f() //333图示:...原创 2021-04-29 00:39:11 · 162 阅读 · 0 评论 -
温故而知新:3.重学javascript笔记(js预解释特殊情况下的处理)
重学javascript笔记一.in属性用法二.预解释在条件控制语句中三.匿名函数的预解释四.自执行函数下的预解释五.return下的变量预解释六.在预解释的时候如果名字相同了则不会重复预解释,但是会重新赋值一.in属性用法判断某一个属性是否属于该对象,属于返回true不属于返回false。var obj = {name:'feiwu',age:25}console.log('name' in obj) //trueconsole.log('say' in obj) //false二原创 2021-04-28 00:59:48 · 65 阅读 · 0 评论 -
温故而知新:2.重学javascript笔记(js作用域链和闭包)
重学javascript笔记一.区分全局变量和私有变量1)全局变量:在window全局作用域下声明的变量为全局变量2)私有变量:在私有作用域下声明的变量或者函数的形参都是私有变量二.作用域链:在私有作用域中,代码执行的时候遇到变量需要先判断他是私有变量还是全局变量,如果是私有变量那么该变量不受外界的干扰,如果不是私有的变量则一直往上级作用域中查找,如果上级作用域也没有则一直往上级查找,查找到window为止三.js执行机制 代码图示:四.闭包定义:闭包是一种保护机制。函数执行的时候形成了一个私有作用域保护原创 2021-04-27 01:21:54 · 147 阅读 · 0 评论 -
温故而知新:1.重学javascript笔记(js内存机制之变量提升)
温故而知新:javascript高级第一天:判断数据类型的方法js的数据类型分为简单类型和复杂类型简单数据类型:String、Number、布尔、undefined、null复杂数据类型:统称为Object(Function、Array)判断数据类型的方法和区别方法:typeof、instanceof、===(全等运算符)js的数据类型分为简单类型和复杂类型简单数据类型:String、Numb...原创 2020-04-20 17:23:00 · 126 阅读 · 0 评论