闭包,继承,事件冒泡,事件捕获,H5与Css新特性,本地存储

本文详细介绍了JavaScript中的闭包概念及其优缺点,包括如何防止内存泄漏。接着探讨了继承的三种方式:原型链、构造函数和组合继承,以及它们各自的优缺点。接着讲解了事件冒泡和事件捕获机制,以及如何改变函数的this指向。最后,总结了HTML5和CSS3的新特性,并比较了sessionStorage、localStorage与cookie的区别。
摘要由CSDN通过智能技术生成

1.闭包

1. 什么是闭包?

当一个函数的返回值是另外一个函数,而返回的那个函数如果调用了其父函数的内部变量,且返回的那个函数在外部被执行,就产生了闭包。

  	function fn(){
   
	var num =0;
	num =num +1;
	return num;
}
	console.log(fun()) // 1
	console.log(fun()) // 1
	console.log(fun()) // 1
	function fn(){
   
	var num=0;
	return function(){
   
	num++;
	return num;
	}}
	var fn2=fn()
	console.log(fn2()) //1
	console.log(fn2()) //2
	console.log(fn2()) //3

闭包可以保持变量不会被垃圾回收机制回收(长存储)
缺点:导致变量一直占用内存,在IE中会导致内存泄漏
优点:避免全局变量污染环境

2.继承

2.1原型链继承

让一个引用数据类型继承另一个引用类型的属性和方法

//父级
//构造函数
function Person(name
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会撸串的傻狍子

感谢您的认可

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值