随笔分类 -  es6

摘要:私有属性 class Person{ //公有属性 name; //私有属性 #age; #weight; //构造方法 constructor(name, age, weight){ this.name = name; this.#age = age; this.#weight = weight; 阅读全文
posted @ 2021-02-05 18:50 AaronHuang 阅读(53) 评论(0) 推荐(0) 编辑
摘要:Object.fromEntries //二维数组 const result = Object.fromEntries([ ['name','Study'], ['xueke', 'Java,大数据,前端,云计算'] ]); //Map const m = new Map(); m.set('nam 阅读全文
posted @ 2021-02-05 16:23 AaronHuang 阅读(35) 评论(0) 推荐(0) 编辑
摘要:扩展运算符与rest参数 <!-- Rest 参数与 spread 扩展运算符在 ES6 中已经引入,不过 ES6 中只针对于数组, 在 ES9 中为对象提供了像数组一样的 rest 参数和扩展运算符 --> //rest 参数 function connect({host, port, ...us 阅读全文
posted @ 2021-02-05 16:17 AaronHuang 阅读(55) 评论(0) 推荐(0) 编辑
摘要:async 和 await async 和 await 两种语法结合可以让异步代码像同步代码一样 async 函数 async 函数的返回值为 promise 对象 promise 对象的结果由 async 函数执行的返回值决定 //async 函数 async function fn(){ // 阅读全文
posted @ 2021-02-05 15:13 AaronHuang 阅读(59) 评论(0) 推荐(0) 编辑
摘要:Array.prototype.includes Includes 方法用来检测数组中是否包含某个元素,返回布尔类型值 指数操作符 在 ES7 中引入指数运算符「**」,用来实现幂运算,功能与 Math.pow 结果相同 //includes 返回true|false indexOf返回下标 con 阅读全文
posted @ 2021-02-04 20:13 AaronHuang 阅读(210) 评论(0) 推荐(0) 编辑
摘要:模块化介绍 模块化是指讲一个大的程序文件,拆分成许多小的文件,然后将小文件组合起来。 模块化好处 防止命名冲突 代码复用 高维护性 模块化规范产品 ES6之前的模块化规范有: CommonJS ⇒ NodeJS、Browserify AMD ⇒ requireJS CMD ⇒ seaJS ES6模块 阅读全文
posted @ 2021-02-04 15:49 AaronHuang 阅读(67) 评论(0) 推荐(0) 编辑
摘要:对象方法扩展 //1. Object.is 判断两个值是否完全相等 console.log(Object.is(120, 120));// console.log(Object.is(NaN, NaN));// console.log(NaN NaN);// //2. Object.assign 对 阅读全文
posted @ 2021-02-03 19:28 AaronHuang 阅读(45) 评论(0) 推荐(0) 编辑
摘要:数值扩展 //0. Number.EPSILON 是 JavaScript 表示的最小精度 EPSILON 属性的值接近于 2.2204460492503130808472633361816E-16 function equal(a, b){ if(Math.abs(a-b) < Number.EP 阅读全文
posted @ 2021-02-03 19:22 AaronHuang 阅读(42) 评论(0) 推荐(0) 编辑
摘要:class类 ES6 提供了更接近传统语言的写法,引入了 Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。ES6 的class可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。 cla 阅读全文
posted @ 2021-02-03 19:17 AaronHuang 阅读(84) 评论(0) 推荐(0) 编辑
摘要:Map介绍 ES6 提供了 Map 数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。Map也实现了iterator接口,所以可以使用【扩展运算符】和【for...of...】进行遍历,Map的属性和方法: size 返回Map的元素个数 阅读全文
posted @ 2021-02-03 18:26 AaronHuang 阅读(53) 评论(0) 推荐(0) 编辑
摘要:集合介绍和API ES6提供了新的数据结构Set(集合)。它类似于数组,但成员的值都是唯一的,集合实现了iterator接口,所以可以使用【扩展运算符】和【for...of...】进行遍历,集合的属性和方法: size 返回集合的元素个数 add 增加一个新元素,返回当前集合 delete 删除元素 阅读全文
posted @ 2021-02-03 18:13 AaronHuang 阅读(54) 评论(0) 推荐(0) 编辑
摘要:Promise介绍 Promise是ES6引入的异步编程的新解决方案。语法上Promise是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果。 Promise构造函数:Promise(excutor) Promise.prototype.then方法 Promise.prototype.c 阅读全文
posted @ 2021-02-03 15:28 AaronHuang 阅读(103) 评论(0) 推荐(0) 编辑
摘要:生成器 生成器函数是ES6提供的一种异步编程方案,语法行为与传统函数完全不同 //生成器其实就是一个特殊的函数 //异步编程 纯回调函数 function * gen(){ console.log("hello generator"); } let iterator = gen(); console 阅读全文
posted @ 2021-02-03 14:27 AaronHuang 阅读(59) 评论(0) 推荐(0) 编辑
摘要:迭代器 迭代器(iterator)是一种接口,为各种不同的数据结构提供统一的访问机制。任何数据结构只要部署iterator接口,就可以完成遍历操作。 ES6创造了一种新的遍历命令for...of循环,iterator接口主要供for...of消费 原生具备iterator接口的数据(可用for of 阅读全文
posted @ 2021-02-02 21:07 AaronHuang 阅读(63) 评论(0) 推荐(0) 编辑
摘要:Symbol基本使用 ES6 引入了一种新的原始数据类型Symbol,表示独一无二的值。它是 JavaScript 语言的第七种数据类型,前六种是:undefined、null、布尔值(Boolean)、字符串(String)、数值(Number)、对象(Object)。 Symbol特点 Symb 阅读全文
posted @ 2021-02-02 16:59 AaronHuang 阅读(143) 评论(0) 推荐(0) 编辑
摘要:扩展运算符 [...]扩展运算符能将【数组】转换为逗号分隔的【参数序列】 //声明一个数组 const tfboys = ['y','w','j']; //声明一个函数 function chunwan(){ console.log(arguments); } chunwan(...tfboys); 阅读全文
posted @ 2021-02-02 15:43 AaronHuang 阅读(46) 评论(0) 推荐(0) 编辑
摘要:ES6引入rest参数,用于获取函数的实参,用来替代arguments //ES5获取实参的方式 function date(){ console.log(arguments);//对象 } date('1','2','3');//object对象 //ES6 rest参数 function dat 阅读全文
posted @ 2021-02-02 15:32 AaronHuang 阅读(55) 评论(0) 推荐(0) 编辑
摘要:函数参数默认值 ES6允许给函数参数赋值初始值 //1.形参初始值 具有默认值的参数,一般位置要靠后(潜规则) function add(a,b,c=10){ return a+b+c; } let result = add(1,2); console.log(result);//13 //2.与解 阅读全文
posted @ 2021-02-02 15:25 AaronHuang 阅读(101) 评论(0) 推荐(0) 编辑
摘要:箭头函数 ES6允许使用【箭头】(=>)定义函数 声明一个函数 let fn = function(){ } let fu = (a,b)=>{ return a+b; } //调用函数 let result = fu(1,2); console.log(result); this是静态的,this 阅读全文
posted @ 2021-02-02 15:17 AaronHuang 阅读(73) 评论(0) 推荐(0) 编辑
摘要:简化对象写法 ES6允许再大括号里面,直接写入变量和函数,作为对象的属性和方法。 遮眼法的书写更加简洁 let name = 'study'; let change = function(){ consoel.log('I like study'); } const study = { name, 阅读全文
posted @ 2021-02-02 15:00 AaronHuang 阅读(58) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示