![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
ES6学习
文章平均质量分 90
学习ES6知识
前端小草籽
学习ing
展开
-
ES6中 promise对象
Promise:1.Promise 是一个ES5中已经出现了,ES6直接写入标准2.Promise 是一个构造函数,创建了一个数据容器数据容器:Map,Set,数组,对象等是 被动产生数据,需要给它添加数据Promise 主动产生数据,不用给它添加数据,而是它自己内部产生数据,再去用它。怎么会主动产生数据呢? 网络请求1.Promise是异步编程的一种解决方案,可以替代传统的解决方案----回调函数和事件。ES6统一了用法,并原生提供了Promise对象,从它可以获取异步操作的消息。2.Promise 异原创 2022-07-13 23:45:00 · 259 阅读 · 0 评论 -
ES6中的 JS循环事件Even Loop
目录1.浏览器JS异步执行原理2.浏览器中的事件循环执行栈和任务队列宏任务和微任务常见的宏任务和常见的微任务编辑扩展:什么是同步编程:一些理论知识:堆,栈,队列先看一段程序:分析:程序结果是 1 3 4 2 么?是就错了!!! 正确答案是 1 3 2 4 那为什么是这样呢?这就要涉及到 JS的异步编程JS代码运行机制:事件循环。理解JavaScript的事件循环往往伴随着宏任务和微任务、JavaScript 单线程执行过程及浏览器异步机制等相关问题。JavaScript 引擎负责解析,执原创 2022-07-13 21:29:16 · 426 阅读 · 0 评论 -
JS中的 回调函数(callback)
目录1.什么是回调函数(callback)呢?2.回调函数有哪些特点?3.回调函数中this的指向问题4.为什么要用到回调函数?5.回调函数和异步操作的关系是什么?回调函数是异步么?把函数当作一个参数传到另外一个函数中,当需要用这个函数是,再回调运行()这个函数.回调函数是一段可执行的代码段,它作为一个参数传递给其他的代码,其作用是在需要的时候方便调用这段(回调函数)代码。(作为参数传递到另外一个函数中,这个作为参数的函数就是回调函数)理解:函数可以作为一个参数传递到另外一个函数中。分析:add(1,原创 2022-07-13 18:11:51 · 74733 阅读 · 16 评论 -
ES6 中的 类
js是什么语言?谈谈对js语言的理解js 是一个基于面向对象设计的单线程的静态脚本语言面向对象:(类 实例对象 继承 封装 多态)基于面向对象设计:本质没有 继承 类 等等语法,但是按照自己的语法特征,设计出了类似的语法单线程:代码只能一个业务一个业务的执行静态:扫描页面发现错误,不报错,要运行程序,直到运行到错误程序的位置才报错。脚本语言: 嵌入式语言,嵌入进网页 很灵活ES6中为了更加好的把js设计成面向对象的语言的语法特征,提出了 类关键字 class1.类名首字母要大写2.类的两种形式:01.声明原创 2022-07-12 23:36:34 · 113 阅读 · 0 评论 -
ES6中的 模块化
但如果希望导入式和嵌入式都运行的话,利用es6中模块化知识外部文件中导出数据:两种导出方式:导入端必须用大括号括起来 且用相同 变量名来接收导出端:export 需要导出的数据 导入端:要用大括号括起来,且要用对相同的变量名称来接收,可以不按照顺序来,但必定用相同变量名称来接收。在导出端只能有一个或者0个,export defult只能有一个或者0个导出端:export defult 要导出的数据所保存到的变量的变量名 导入端:接收的标识符随便都可以。没有必须相同的要求,且不要{ }注意:如果默认导出多个数原创 2022-07-12 20:24:51 · 99 阅读 · 0 评论 -
ES6中的 箭头函数
目录箭头函数1.箭头函数没有关键字function声明,就直接当作一种数据看待。2.箭头函数也属于函数类型3.箭头函数中this指向:4.箭头函数写法上与普通函数的区别6.箭头函数里面不存在 arguments关键字(保存传入的实参)7.bind()/call() 能改变箭头函数中this指向么? 不能8.用箭头函数解决回调函数相关的问题9.箭头函数参数也有默认值10.注意点:箭头函数是 ES6中出的一种函数的声明方法以前学的两种函数声明方式:1.声明式 (在作用域内部有提升) 在作用域中直接写了一个fun原创 2022-07-12 18:59:31 · 558 阅读 · 0 评论 -
ES6中 字符串string新增的方法
分析代码:分析:str是字符串,字符串能用点语法?ES6中,字符串的原型链上新增了很多的方法:1.子串识别类ES6 之前判断字符串是否包含子串,用 indexOf 方法,ES6 新增了子串的识别方法1.下面三个方法都可以接受两个参数,一:是需要搜索的字符串,二:是includes()和startsWith()可选的搜索起始位置索引,endsWith()是截段字符串下标的结束位置。若没写第二个参数,则默认从第一个字符下标0开始算起走。01.includes():返回布尔值,判断是否找到参数字符串。原创 2022-07-12 15:53:53 · 315 阅读 · 0 评论 -
数组-Map数据-Set数据之间的转换
1.数组转Map数据:必须是二维数组把需要转的二维数组当参数传入Map()结果: 分析:数组转为Map数据,数组必须是二维数组[[]],转换后:数组里面的小数组中第一个元素是key值(键值),第二个是value值。2.Map数据转数组: 调用Array.from静态方法 使用 Array.from 函数可以将一个 Map 对象转换成一个二维键值对数组静态方法? 3.数组转集合Set()把数组当参数传入Set()分析:因为集合的互异性,所以重复的数据会去重,两个形式一样的对象 {age:20原创 2022-07-12 00:12:31 · 3463 阅读 · 0 评论 -
ES6中的 扩展运算符(...) 和 Set()数据结构(可以称为集合)
扩展运算符是三个点(...)。用于取出参数对象的所有可遍历属性,然后拷贝到当前对象之中。 2.用于合并两个对象 注意点:合并时,如果自定义的属性,放在扩展运算符后面,则扩展运算符内部的同名属性会被覆盖掉。2. 数组的扩展运算符 (三个点相当于数组展开)1.复制数组扩展运算符提供了复制数组的简便写法。2.合并数组3.字符串变数组2.Set()对象里面存数据方式01. 调用add()方法 ,里面参数为要存的数据02. 写到Set()括号里面:原创 2022-07-11 21:14:04 · 575 阅读 · 0 评论 -
ES6中的 Map对象
目录1.Map()1.Map和Object的区别Map对象存数据用 set()Map对象取数据用 get() Map对象通过delete()来删除数据Map对象通过clear()来清空数据Map对象数据的遍历 Map对象特性: Map对象与其它数据进行转换。。。Map做个购物车(现在很困难,以后学深了再回来写)浏览器提供的引用数据(内置方法):document,window,ImageES5中:JS语法提供的内置方法(前后端都能用):Data Math Array RegExp(正则表达式) Obje原创 2022-07-11 12:58:48 · 930 阅读 · 0 评论 -
ES6中的 Symbol
目录1.概述2.symbol值的生成3.作为属性名的Symbol值4.symbol数据的总结注意symbol是一个ES6标准中新增的一种基本数据类型,Symbol类型数据的原理:保证每一个属性名都是独一无二的,从根本上防止属性名的冲突。symbol 的值是通过 Symbol() 函数生成,每一个 symbol 的值都是唯一的,Symbol() 函数可以接受一个字符串作为参数,表示对该值的描述,因此即使定义 symbol 使用相同的参数互相之间也不是相同的:3.作为属性名的Symbol值原创 2022-07-09 15:56:15 · 2340 阅读 · 0 评论 -
ES6中的解构赋值
目录1.解构赋值理论2.数组的解构赋值详解1.数组解构赋值的理解: 2.解构默认值(有特殊情况bug) 3.解构嵌套数组4.相同"模式"的不完全解构 3.对象的解构赋值1.基本:对象的属性没有次序,(重点:变量必须与属性同名),才能取到正确的值。2.赋值给新变量名 (其中简写很重要)3.对象的不完全解构(对象解构也有的bug)4.数组和对象的嵌套解构 5.对象解构的错误写法4.函数参数的解构赋值1.解构对象类型参数2.解构数组类型参数3.为参数设定默认值 4.注意点:数组注重下标相匹配(在乎次序),对象注重原创 2022-07-09 11:35:38 · 3994 阅读 · 1 评论 -
ES6 中的 let 和 const
目录01.let 和 const 都是块级作用域。02.let 和 const声明不存在变量提升,只能先声明再使用,否则会报错。03.ES6中不允许重复声明,ES5允许04.const 声明的是一个只读常量,再声明时就需要赋值。05.let 与const 声明赋值问题06. const有关知识07.注意点:08.案例在 ES6 中通常用let 和 const 来声明,let 表示变量、const 表示常量,ES5用var声明 特点:以{ }代码块作为作用域范围 ,只能在代码块里面使用,而var声明的变量全局原创 2022-07-11 14:18:47 · 444 阅读 · 1 评论 -
ES6简介
浏览器要渲染出网页给用户看,必须加载HTML编码和js脚本,渲染引擎渲染页面的UI,JS执行引擎操作内存,就是浏览器的重要组成程序:内核(渲染引擎和执行引擎)根据不同的浏览器厂商,他们使用了不同的内核,内核的程序是很难实现的,根据我的了解有一些内核是公司自己实现的,有一些是直接借用的,比如:搜索一些国内知名的浏览器和内核: 360,2345,夸克等ECMAScript5,即 ES5,是 ECMAScript 的第五次修订,于 2009 年完成标准化ECMAScript6,即 ES6,是 ECMAScrip原创 2022-07-11 22:35:43 · 241 阅读 · 0 评论