ES5和ES6
文章平均质量分 86
ES5和ES6 课程学习笔记
努力学习前端的小陈
每一天都在努力学习前端,专栏有报错,配置专栏,用于记录每次报错的问题及处理方案
展开
-
面向对象编程介绍
1. 两大编程思想面向过程面向对象2. 面向过程编程 POP(Process-oriented programming)面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了。举个栗子:将大象装进冰箱,面向过程做法。面向过程,就是按照我们分析好了的步骤,按照步骤解决问题。3.面向对象编程 OOP (Object Oriented Programming)面向对象是把事务分解成为一个个对象,然后由对象之间分工与.....原创 2022-04-05 15:24:58 · 180 阅读 · 0 评论 -
ES6 中的类和对象
面向对象的思维特点: 1.抽取(抽象)对象共用的属性和行为组织(封装)成一个类(模板)2.对类进行实例化, 获取类的对象面向对象编程我们考虑的是有哪些对象,按照面向对象的思维特点,不断的创建对象,使用对象,指挥对象做事情.1 对象现实生活中:万物皆对象,对象是一个具体的事物,看得见摸得着的实物。例如,一本书、一辆汽车、一个人可以是“对象”,一个数据库、一张网页、一个与远程服务器的连接也可以是“对象”。在 JavaScript 中,对象是一组无序的相关属性和方法的集合,所有的事物.原创 2022-04-06 10:10:06 · 261 阅读 · 0 评论 -
类的继承与super 关键字
1 继承现实中的继承:子承父业,比如我们都继承了父亲的姓。程序中的继承:子类可以继承父类的一些属性和方法。语法:class Father{ // 父类} class Son extends Father { // 子类继承父类} 实例:class Father { constructor(surname) { this.surname= surname; } say() { cons.原创 2022-04-06 11:58:36 · 874 阅读 · 0 评论 -
面向对象案例
1 面向对象版 tab 栏切换功能需求:1.点击 tab栏,可以切换效果.2.点击 + 号, 可以添加 tab 项和内容项.3.点击 x 号, 可以删除当前的tab项和内容项.4.双击tab项文字或者内容项文字,可以修改里面的文字内容.抽象对象: Tab 对象1.该对象具有切换功能2.该对象具有添加功能3.该对象具有删除功能4.该对象具有修改功能2 面向对象版 tab 栏切换 添加功能 1.点击 + 可以实现添加新的选项卡和内容2.第一步....原创 2022-04-06 21:09:27 · 316 阅读 · 0 评论 -
构造函数和原型
1 概述在典型的 OOP 的语言中(如 Java),都存在类的概念,类就是对象的模板,对象就是类的实例,但在 ES6之前, JS 中并没用引入类的概念。ES6, 全称 ECMAScript 6.0 ,2015.06 发版。但是目前浏览器的 JavaScript 是 ES5 版本,大多数高版本的浏览器也支持 ES6,不过只实现了 ES6 的部分特性和功能。在 ES6之前 ,对象不是基于类创建的,而是用一种称为构建函数的特殊函数来定义对象和它们的特征。创建对象可以通过以下三种方式:1. 对象原创 2022-04-07 20:16:15 · 321 阅读 · 0 评论 -
ES5的继承
ES6之前并没有给我们提供 extends 继承。我们可以通过构造函数+原型对象模拟实现继承,被称为组合继承。1 call()调用这个函数, 并且修改函数运行时的 this 指向 fun.call(thisArg, arg1, arg2, ...) thisArg :当前调用函数 this 的指向对象arg1,arg2:传递的其他参数call()的两个作用:1. call() 可以调用函数 fn.call();2. call() 可以改变这个函数的thi.....原创 2022-04-07 21:19:14 · 211 阅读 · 0 评论 -
ES5 中的新增方法(查询商品案例)
1 ES5 新增方法概述ES5 中给我们新增了一些方法,可以很方便的操作数组或者字符串,这些方法主要包括:数组方法字符串方法对象方法2 数组方法迭代(遍历)方法:forEach()、map()、filter()、some()、every();1 forEach()array.forEach(function(currentValue, index, arr))lcurrentValue:数组当前项的值index:数组当前项的索引arr:数组对象本身// ...原创 2022-04-07 21:41:55 · 590 阅读 · 0 评论 -
函数的进阶
1、函数的定义和调用1.1 函数的定义方式1. 函数声明方式 function 关键字 (命名函数)2. 函数表达式 (匿名函数)3. new Function() var fn = new Function('参数1','参数2'..., '函数体')Function 里面参数都必须是字符串格式第三种方式执行效率低,也不方便书写,因此较少使用所有函数都是 Function 的实例(对象) 函数也属于对象// 函数的定义方式 ....原创 2022-04-08 20:44:54 · 1031 阅读 · 0 评论 -
正则表达式
1. 正则表达式概述1.1 什么是正则表达式正则表达式( Regular Expression )是用于匹配字符串中字符组合的模式。在 JavaScript中,正则表达式也是对象。正则表通常被用来检索、替换那些符合某个模式(规则)的文本,例如验证表单:用户名表单只能输入英文字母、数字或者下划线, 昵称输入框中可以输入中文(匹配)。此外,正则表达式还常用于过滤掉页面内容中的一些敏感词(替换),或从字符串中获取我们想要的特定部分(提取)等 。其他语言也会使用正则表达式,本阶段我们主要是利用 J.原创 2022-04-10 13:49:44 · 464 阅读 · 0 评论 -
ES6基础部分
1、ES6 简介1.1 什么是 ES6 ?ES 的全称是 ECMAScript , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范。 年份 版本 2015年6月 ES2015 2016年6月 ES2016 2017年6月 ES2017 2018年6月 ES2018 .原创 2022-04-11 15:01:41 · 2265 阅读 · 0 评论 -
ES6的模块化
1. node.js 中如何实现模块化node.js 遵循了 CommonJS 的模块化规范。其中:导入其它模块使用require() 方法模块对外共享成员使用module.exports 对象模块化的好处:大家都遵守同样的模块化规范写代码,降低了沟通的成本,极大方便了各个模块之间的相互调用,利人利己。2. 前端模块化规范的分类在 ES6 模块化规范诞生之前,JavaScript 社区已经尝试并提出了AMD、CMD、CommonJS 等模块化规范。 但是,这些由社区提出的模块原创 2022-04-19 21:32:58 · 556 阅读 · 0 评论 -
Promise和async/await
1. 回调地狱多层回调函数的相互嵌套,就形成了回调地狱。示例代码如下:回调地狱的缺点:代码耦合性太强,牵一发而动全身,难以维护大量冗余的代码相互嵌套,代码的可读性变差1.1 如何解决回调地狱的问题为了解决回调地狱的问题,ES6(ECMAScript 2015)中新增了 Promise 的概念。2.Promise 的基本概念① Promise 是一个构造函数我们可以创建 Promise 的实例const p = new Promise()...原创 2022-04-20 13:10:23 · 957 阅读 · 0 评论 -
JS的执行机制(EventLoop、宏任务和微任务)
1、EventLoop1. JavaScript 是单线程的语言JavaScript 是一门单线程执行的编程语言。也就是说,同一时间只能做一件事情。单线程执行任务队列的问题:如果前一个任务非常耗时,则后续的任务就不得不一直等待,从而导致程序假死的问题。2.同步任务和异步任务为了防止某个耗时任务导致程序假死的问题,JavaScript 把待执行的任务分为了两类:① 同步任务(synchronous)又叫做非耗时任务,指的是在主线程上排队执行的那些任务只有前一个任..原创 2022-04-21 09:49:30 · 728 阅读 · 1 评论 -
案例:API 接口案例
1、案例内容:1. 案例需求基于MySQL 数据库+ Express 对外提供用户列表的API 接口服务。用到的技术点如下:第三方包express 和mysql2ES6 模块化Promiseasync/await2. 主要的实现步骤① 搭建项目的基本结构② 创建基本的服务器③ 创建db 数据库操作模块④ 创建 user_ctrl 业务模块⑤ 创建 user_router 路由模块3.搭建项目的基本结构① 启用 ES6 模块化支持在 pack原创 2022-04-21 14:31:20 · 1534 阅读 · 0 评论