
ES6
细化ES6语法
^ω^奋斗小青年
一个小菜鸡
展开
-
[ES6] 细化ES6之 -- 前端模块化
前端模块化前言前端开发领域发展到目前阶段:零件化 - 最终呈现给用户是一个完整的产品(由各个零件组成的)降低生产成本 – 多人协作(每个人各司其职)降低使用成本 - 各个零件之间是低耦合的组件化 - 将一个完整的产品划分成各个组件前端开发中更多是指HTML页面和CSs样式模块化 - 将一个完整的产品划分成各个模块前端开发中更多是指JavaScript逻辑组件化与模块化的关系将一个完整的产品,划分成若干的组件将每一个组件划分成若干的模块组件化与模原创 2020-10-29 14:51:32 · 292 阅读 · 1 评论 -
[ES6] 细化ES6之 -- Class关键字
类的声明类是什么类作为对象的模板,只是一个语法糖class 关键字是让对象原型的写法更加清晰、更像面向对象编程的语法而已。// ES5创建构造函数function Hero() { this.name = "张无忌" this.sayMe = function () { console.log("this is 张无忌"); }}Hero.prototype={ age:18, myjob:function () { co原创 2020-10-29 10:12:38 · 310 阅读 · 1 评论 -
ES6 -- 目录
[ES6] 细化ES6之 – ECMA6是什么[ES6] 细化ES6之 – 块级作用域[ES6] 细化ES6之 – 变量的解构赋值[ES6] 细化ES6之 – 字符串的扩展[ES6] 细化ES6之 – 数组的扩展[ES6] 细化ES6之 – 函数的扩展[ES6] 细化ES6之 – 对象的扩展[ES6] 细化ES6之 – 键值对集合[ES6] 细化ES6之 – Promise对象[ES6] 细化ES6之 – async函数[ES6] 细化ES6之 – 迭代器与生成器...原创 2020-10-28 19:11:16 · 264 阅读 · 0 评论 -
[ES6] 细化ES6之 -- 迭代器与生成器
SymbolSymbol是什么ES6 引入了一种新的原始数据类型Symbol,表示独一无二的值Symbol 值通过Symbol函数生成let symbol = Symbol();console.log(typeof symbol); // symbollet symbol2 = Symbol("xxx");console.log(symbol2); // Symbol(XXX)let symbol3 = Symbol(5);console.log(symbol3); //原创 2020-10-28 17:32:38 · 301 阅读 · 1 评论 -
[ES6] 细化ES6之 -- async函数
async函数是什么用于简化Promise异步调用的操作是 Generator 函数的语法糖async/await类似于组合生成器和Promisesfunction resloveAfter2Seconds() { return new Promise(resolve => { setTimeout(()=>{ resolve('resolved') },3000) })}async function asy原创 2020-10-28 15:39:54 · 211 阅读 · 0 评论 -
[ES6] 细化ES6之 -- Promise对象
Promise对象是什么Promise对象是什么ES6新增了Prormnise对象,该对象允许对延迟和异步操作流程进行控制。一个Promise对象就是一个代表了异步操作最终完成或者失败的对象。开发人员可以使用由其他函数创建并返回的Promise 对象。Promise对象本质上就是一个绑定了回调的对象,而不是将回调传进函数内部。一个Promise有以下几种状态:pending:初始状态,既不是成功,也不是失败状态。fulfilled:意味着操作成功完成。rejected:意味着操作失败。&原创 2020-10-28 14:49:22 · 267 阅读 · 1 评论 -
[ES6] 细化ES6之 -- 键值对集合
Set集合Set集合是什么Set对象是值的集合,可以按照插入的顺序迭代它的元素。Set集合中的元素只会出现一次,即 Set集合中的元素是唯一的,没有重复的值。Set本身是一个构造函数,用来生成 Set 数据结构。const arr = [1,2,3,3,4,5,2]let set = new Set(arr)console.log(set);// Set {1,2,3,4,5}// console.log(Set.prototype);// Set {} N原创 2020-10-28 10:37:41 · 427 阅读 · 0 评论 -
[ES6] 细化ES6之 -- 对象的扩展
对象的属性属性表示法ES6 允许在大括号里面,直接写入变量和函数,作为对象的属性和方法ES5let name = "张无忌";function sayMe() { console.log("this is 张无忌");}// ES5定义对象的属性和方法的方式var obj = { name:name,// 第二个name表示变量名 sayMe:sayMe,// //第二个sayMe表示函数名};console.log(obj.name); //张无忌ES6原创 2020-10-27 20:36:50 · 152 阅读 · 0 评论 -
[ES6] 细化ES6之 -- 函数的扩展
函数参数的默认值函数参数指定状认值ES6 之前,不能直接为函数的参数指定默认值,如果定义了形参,不传递实参时导致形参为undefined,只能采用变通的方法。//ES5function fn(arg) { arg = arg || 0; console.log(arg);//0}fn()//ES6function fn(arg = 0) { console.log(arg);//0}fn() 与解构赋值配合使用参数默认值可以与解构赋值的默原创 2020-10-27 19:47:26 · 295 阅读 · 1 评论 -
[ES6] 细化ES6之 -- 数组的扩展
扩展运算符扩展运算符扩展运算符(spread)是三个点(...)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。允许一个表达式在原地展开// 定义一个数组var arr = [1,2,3,4,5];//将数组中的每一个元素打印在控制台for(let i =0;i<arr.length;i++){ console.log(arr[i]);}//利用扩展运算符console.log(...arr);// 1 2 3 4 5 主要用于函数原创 2020-10-27 15:42:07 · 179 阅读 · 0 评论 -
[ES6] 细化ES6之 -- 字符串的扩展
判断是否包含都区分大小写 includes()方法返回布尔值,表示是否找到了参数字符串let str = 'hebei baodingshi lianchiqu'console.log(str.includes('o'));// trueconsole.log(str.includes('o', 7));// trueconsole.log(str.includes('o', 8));// false// includes()方法是区别大小写console.log(st原创 2020-10-27 08:21:59 · 156 阅读 · 0 评论 -
[ES6] 细化ES6之 -- 变量的解构赋值
变量的解构赋值解构赋值是什么ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值var/let [变量名称1,变量名称2,...] = 数组或对象本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应的值 解构赋值失败如果解构不成功,变量的值就等于undefined解构赋值失败 - 定义变量的数量大于值的数量let [m,n] = [1];console.log(m, n);//1 undefined 不完全解构赋原创 2020-10-27 08:19:53 · 192 阅读 · 0 评论 -
[ES6] 细化ES6之 -- 块级作用域
所谓的块级作用域,可能是一个{},一个代码块,一句话 let关键字let 与 var 区别区别varlet变量提升有无作用域全局作用域、函数作用域全局作用域、函数作用域和块级作用域提前声明有无重复声明有无重新赋值有有let或const没有声明提前,相当于暂时性死区(TDZ) 与函数的关系varvar v = 100;function fn() { console.log(v);/.原创 2020-10-27 08:17:06 · 178 阅读 · 0 评论 -
[ES6] 细化ES6之 -- ECMA6是什么
ECMA6是什么JavaScript 语言的下一代标准ES6 的目标,是使得 JavaScript 语言可以用来编写大型的复杂的应用程序,成为企业级开发语言。ECMAScript 和 JavaScript 的关系ECMAScript 是 JavaScript 语言的国际标准JavaScript 是 ECMAScript 的实现。 ECMA的发展历史1998 年 6 月,ECMAScript 2.0 版发布。1999 年 12 月,ECMAScript 3.0 版发布原创 2020-10-27 08:10:58 · 363 阅读 · 0 评论