一、类
概述:在ES5中提出类概念【构造函数】,但是ES6中提出类的新的语法;需要使用关键字class进行定义;
1.1ES5中类
1.2ES6中类
概述:ES6规范当中可以使用class关键字定义类;
1.3ES5中继承
概述:很多面向对象语言【JS:基于面向对象一门语言】,都有三大特征:继承、封装、多态
在JS当中多个类之间可以完成继承功能:让某一个类继承另外一个类属性、方法
继承实现原理:子类的 原型对象 指向 父类的一个实例,可以实现继承;
//JS当中继承:多类之间实现的
1.4ES6中继承
二、箭头函数
概述:在ES5中声明函数我们需要使用关键字function声明函数【关键字 + 表达式】;
但是在ES6中提出所谓箭头函数;
2.1箭头函数基本使用
概述:以后关键字const经常集合箭头函数一起使用;
箭头函数如果有返回值且 一行代码 可以省略return关键字 函数体;
箭头函数如果有一个形参 而且有返回值 可以省略return关键字、函数体、省略函数小括号;
箭头函数如果 返回值为JSON【狭义对象】 需要给对象外层加上一个小括号变为表达式返回;
箭头函数不允许用关键字new执行【因为ES6中类使用class定义,不是箭头函数了】
2.2箭头函数练习
闭包:闭包是函数一种特性,可以记住作用域发生变化的函数【我们称之为闭包】
由于sum函数可以记住全局作用域当中a数值变化【sum函数就是一个闭包】
2.3函数默认参数
2.4箭头函数上下文
2.4.1ES5中函数上下文判断
概述:以前函数上下文判断:前提函数是怎么样执行的?
注意:ES6中箭头函数的上下文判断:下面规律都是不行;
函数名加上小括号调用【函数上下文是window】
函数作为事件处理函数执行【函数上下文是触发这个事件元素】
函数最为对象方法谁 最后 打点【函数的上下文就是这个对象】
函数作为数组元素枚举出来执行【函数上下文是当前这个数组】
定时器、延迟器回调【函数的上下文是window】
2.4.2箭头函数上下文判断
概述:以前学习规律统统不适用于箭头;
2.4.3bind绑死上下文
概述:每一个函数对象其实都拥有一个bind内置方法使用;它的作用是可以给关键字声明函数‘绑死上下文’;
注意:bind对于箭头函数没有意义;
①bind是函数对象内置方法:可以给函数的上下文‘绑死’
②函数对象调用bind方法【当前函数不会执行】,只是给函数绑死上下文而已
③bind和apply||call区别
bind:函数不会执行 || 它可以绑死上下文
apply|call:函数会立即执行一次 || 可以多次篡改上下文
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。