一,今日学习内容:
1.闭包
1.1闭包的作用
实现早期的模块化开发,把所有的变量隐藏在内部,对外暴露统一的访问接口隐藏变量,避免全局污染【ES6自带模块化开发
1.2闭包的优缺点
优点:隐藏变量,避免全局污染,实现了早期的模块化开发
缺点:一旦形成了闭包,这个变量不会被内存释放,内存开销比较大,会造成内存泄露,所以不建议过多使用
2.面向对象思想---理解
2.1面向过程POP
按照流程步骤,一步一步地走,实现功能,每一步都是亲力亲为
优点:对流程细节把控清晰
缺点:不适合大型项目
2.2面向对象OOP
从全局出发,把功能都封装在对象中,然后要做什么就找什么对象,调用对象的方法
优点:适合大型项目,功能都封装在各个对象中
缺点:细节把控不清晰
3.类和构造函数的关系【掌握】
1.概念:构造函数在js中,可以称为类
2.js内置的构造函数有:Array、String、Number、Function、Object、Date、Boolean、Error、RegExp........
3.他们的作用:造出各种各样类型的数据。造:new处理,实例化出来。new出各种实例对象,得到各种类型的数据
4.如果js内置没有这个构造函数,自己怎么写出一个?如何自己写出一个构造函数
// 特点:
// 1.构造函数首字母大写
// 2.属性和方法都挂载在this上
// 3.没有返回值
// 4.使用new调用
3.1new的过程中发生了什么---面试题
1.首先会创建一个空的对象
2.this指向这个对象
3.执行这个构造函数的代码--这里面的代码全都要走一遍
4.自动返回this(this指向实例对象)
|