ES6
文章平均质量分 51
JavaScript新语法
Xiaaoke
这个作者很懒,什么都没留下…
展开
-
Promise 简单源码
Promise简单源码目录Promise简单源码Promise方法分析Promise方法Promise源码Promise方法一个简单的Promise方法执行过程const promise = new Promise(function(resolved, rejusted){ setTimeout(function(){ if(true){ r...原创 2020-04-11 17:39:20 · 436 阅读 · 0 评论 -
精简ES6知识点
回顾ES6 目录回顾ES6 ES5ES6新增加的语法新增加的方法:推荐网站:ESMAScript编码规范MDN菜鸟教程ES6阮一峰:ES6入门教程JavaScript中文网前端开发博客我的博客--ES6ES5strict模式:严格模式Array增加的方法:every():检测数值元素的每一个元素是否符合条件some();检测数组元素是否有元素符号指定条件forEach();数组每...原创 2020-04-11 17:35:36 · 162 阅读 · 0 评论 -
Module模块及用法
Module模块目录Module模块概念export 与 import模块的定义模块导出模块的引用默认模块浏览器加载模块概念在 ES6 前, 实现模块化使用的是 RequireJS 或者 seaJS(分别是基于 AMD 规范的模块化库, 和基于 CMD 规范的模块化库)。ES6 引入了模块化,其设计思想是在编译时就能确定模块的依赖关系,以及输入和输出的变量。好处:不再需要UMD模块...原创 2020-04-05 13:14:55 · 1497 阅读 · 0 评论 -
extends类的完美继承
类的继承目录类的继承面向对象与面向过程语法super关键字类的prototype属性和__proto__属性重写类的继承原生构造函数的继承面向对象与面向过程都是解决问题的一种思路面向过程:解决问题的时候,关注的是解决问题需要的过程(步骤)把大象放入冰箱①打开冰箱②把大象放入冰箱③关上冰箱每一步都需要自己写(亲力亲为)面向对象:解决问题的时候,关注的是解决问题所需要的对象...原创 2020-03-22 17:23:54 · 553 阅读 · 0 评论 -
class 类的运用
类(Class)目录类(Class)类的语法为什么引入Class?类与构造函数对比类的取值函数(getter)和存值函数(setter)类的奇葩写法(直接法)类注意点静态方法和静态属性私有方法和私有属性保证构造函数是通过new调用的修饰类的语法为什么引入Class?为了方便原型和原型链的编程书写方式更加像面向对象的方式,使其JavaScript更加完善了构造函数类与构造函数对比//...原创 2020-03-22 17:21:59 · 672 阅读 · 0 评论 -
async 异步变同步
ES6 async函数目录ES6 async函数基本用法async的特点使用注意点错误处理三种方法写异步基本用法ES2017 标准引入了 async 函数,使得异步操作变得更加方便async函数是什么?一句话,它就是Generator函数的语法糖async 函数写法// 函数声明async function foo() {};// 函数表达式const foo = async ...原创 2020-03-26 18:04:02 · 1854 阅读 · 0 评论 -
生成器 Generator
ES6生成器(Generator)目录ES6生成器(Generator)什么是生成器(Generator)?基本操作斐波那契数列其他操作对象中的Generator函数什么是生成器(Generator)?生成器就是通过构造函数Generator创建出来的对象,生成器既是一个迭代器,同时又是一个可迭代的对象基本操作语法:function* myGenerator() { yield '...原创 2020-03-25 17:07:51 · 4142 阅读 · 1 评论 -
迭代器 Iterator
ES6迭代器目录ES6迭代器迭代器(Iterator)介绍基本语法应用for...of循环语法基本操作for...of与for...in的区别迭代器(Iterator)介绍Iterator迭代器从一个数据集合中按照一定的顺序,不断的取出数据的过程Iterator的作用:为各种数据结构,通提供一个接口使得数据结构的成员能够按某种次序排列ES6创造了一种新的遍历命令for…of循环,...原创 2020-03-24 15:22:02 · 407 阅读 · 0 评论 -
Promise回调地狱的拯救者
Promise 对象目录Promise 对象概述Promise解决异步的优点基本用法then方法Promise对象实现的 Ajax 操作Promise对象实现的图片加载方法方法详解概述Promise是异步编程的一种解决方案从语法上说,Promise 是一个对象,从它可以获取异步操作的消息Promise对象有两个特点:对象的状态不受外界影响。有三种状态:pending:进行中fu...原创 2020-03-23 13:40:10 · 502 阅读 · 0 评论 -
Proxy代理来扩展JS
Proxy代理目录Proxy代理概念基本用法支持Proxy代理的方法方法详解组件化开发概念Proxy可以对目标对象的读取、函数调用等操作进行拦截,然后进行操作处理。它不是直接操作对象,而是像代理模式,通过对象的代理模式进行操作,在进行操作时,可以添加一下需要的操作简单来说Proxy用于修改某些默认行为,等同于修改JavaScript底层语言基本用法该构造函数有两个对象:target...原创 2020-03-31 15:14:27 · 527 阅读 · 0 评论 -
Reflect静态的object对象
Reflect概念ES6 中将 Object 的一些明显属于语言内部的方法移植到了 Reflect 对象上(当前某些方法会同时存在于 Object 和 Reflect 对象上),未来的新方法会只部署在 Reflect 对象上。Reflect 对象对某些方法的返回结果进行了修改,使其更合理。Reflect 对象使用函数的方式实现了 Object 的命令式操作设计Reflect 对象的目的:...原创 2020-04-03 20:16:30 · 559 阅读 · 0 评论 -
Symbol(符号)唯一的代表
数据类型目录数据类型数据分类Symbol 数据类型概述作为属性名属性名的遍历定义一个私有属性定义一个私有方法Symbol.for(),Symbol.keyFor()BigInt 数据类型为什么要引入?BigInt 对象数据分类基本类型: 直接存取基本类型字符串数值布尔类型nullundefinedSymbol(ES6)BigInt(ES2020)复杂类型: 通过引...原创 2020-03-20 12:44:58 · 934 阅读 · 0 评论 -
Map对象的加强版
ES6数据结构Map目录ES6数据结构Mapmap基本用法属性和方法map各种转换应用WeakMapWeakMap与Map的区别语法弱引用方法WeakMap应用map基本用法为什么要map数据结构:JavaScript的对象本质上就是一个键值对的集合(hash结构),但是传统上只能用字符串当key值,这样就有很多局限性Map数据结构:(对象的升级版)类似于对象,还是采用键值对的...原创 2020-03-21 12:53:04 · 1580 阅读 · 0 评论 -
Set强大是去重功能
ES6数据结构Set目录ES6数据结构SetSet数据结构基础用法Set的属性和方法遍历的应用WeakSetWeakSet与Set的区别语法方法WeakSet应用Set数据结构基础用法ES6 提供了新的数据结构 Set(为构造函数)。它类似于数组,但是成员的值都是唯一的,没有重复的值,可以用于去重内部判断重复的判断语句的利用的"==="Set结构没有key,只有value(也可以说...原创 2020-03-21 12:49:04 · 611 阅读 · 0 评论 -
字符串模板
ES6字符串模板目录ES6字符串模板模板字符串标签模板标签模板的变量应用模板字符串语法:把字符串写在``里面,${变量、表达式、函数}:获取值var obj ={ name: '张三', age: 20}// 传统打印console.log("我的名字叫" + obj.name + ",今年" + obj.age + "岁");// ES6console.lo...原创 2020-03-23 22:09:08 · 871 阅读 · 2 评论 -
箭头函数与运算符(...)
ES6函数扩展目录ES6函数扩展箭头函数应用场景this的指向参数默认值name 属性rest参数参数的书写方式(建议)扩展运算符(...)扩展运算符带来的用途尾调用以下三种情况,都不属于尾调用箭头函数// 传统模式var fn = function (a, b) { [a, b] = [b, a]; return `a = ${a},b = ${b}`;}var a ...原创 2020-03-20 12:40:51 · 363 阅读 · 0 评论 -
变量的解构赋值
变量的解构赋值ES6允许我们通过数组或者对象的方式,对一组变量进行赋值,这就称为解构(等号两边的结构一定要相等这样才能拿到你需要的值)目录变量的解构赋值字符串的解构赋值数组中的解构赋值解析问题默认值对象的解构赋值解析问题默认值属性的简写属性表达式函数参数的解构赋值圆括号问题用途模板字符串标签模板字符串的解构赋值JavaScript中字符串可以看成只读的数组,在字符串的结构赋值中有一个len...原创 2020-03-19 12:25:01 · 371 阅读 · 0 评论 -
声明变量的三大代表var、let和const
ES6声明变量ES6中新增了let和const关键字来定义变量:var:ES5和ES6中,在某种意义上可以用来定义全局变量(variable简写)let:定义局部变量,替代let,(同一作用域不允许重复定义)const:定义常量(定义后,不可修改)var:全局变量// 全局作用域{ // 局部作用域 var x = 1;}console.log(x); // ...原创 2020-03-15 15:00:55 · 981 阅读 · 0 评论 -
ES6 历史
前言ECMAScript是JavaScript的语法标准,而ES6是JavaScript 的下一个版本标准ps:严格来说,ECMAScript还包括其他很多语言的语法标准现在大部分的编写一般都是ES3.1语法,比如jQuery的语法就比较倾向ES3,但是现在的主流框架Vue.js和React.js的语法,就大量用的都是ES6语法,node全部都是ES6的语法ES6中增加了很多功能上的不足,...原创 2020-03-15 14:59:35 · 227 阅读 · 0 评论 -
ESMAScript5严格模式 (use strict)
JavaScript 严格模式 (use strict)JavaScript 严格模式(strict mode)即在严格的条件下运行使用 “use strict” 指令“use strict” 指令在 ECMAScript5.0 中新增它不是一条语句,但是是一个字面量表达式,在 JavaScript 旧版本中会被忽略支持严格模式的浏览器: Internet Explorer 10 +...原创 2020-03-15 14:26:54 · 159 阅读 · 0 评论 -
浏览器中的JavaScript是如何运行的
浏览器中的JavaScript运行机制JavaScript是单线程,可以通过异步来实现多线程目录浏览器中的JavaScript运行机制ESMAScript和JavaScript的关系JS Engine(JS引擎)Context(执行上下文)Call Stack(调用栈)Event Loop(事件循环)JavaScript运行机制浏览器的线程ESMAScript和JavaScript的关系...原创 2020-03-23 13:33:30 · 2637 阅读 · 0 评论