-
15.ES6模块
摘要:概述 在 ES6 前, 实现模块化使用的是 RequireJS 或者 seaJS(分别是基于 AMD 规范的模块化库, 和基于 CMD 规范的模块化库)。 ES6 引入了模块化,其设计思想是在编译时就能确定模块的依赖关系,以及输入和输出的变量。 ES6 的模块化分为导出(export) @与导入(i
阅读全文
-
14.class类
摘要:在ES6中,class (类)作为对象的模板被引入,可以通过 class 关键字定义类。 class 的本质是 function。 它可以看作一个语法糖,让对象原型的写法更加清晰、更像面向对象编程的语法。 基础用法 类定义 // es5造类 function Person(name,age) { t
阅读全文
-
13. async用法
摘要:async async 是 ES7 才有的与异步操作有关的关键字,和 Promise , Generator 有很大关联的。 语法 async function name([param[, param[, ... param]]]) { statements } name: 函数名称。 param:
阅读全文
-
12. Promise对象
摘要:是异步编程的一种解决方案。 从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。 Promise 状态 状态的特点 Promise 异步操作有三种状态:pending(进行中)、fulfilled(已成功)和 rejected(已失败)。除了异步操作的结果,任何其他操作都无法改变这个
阅读全文
-
11.Generator应用
摘要:// 回调地狱 $.ajax({ url: 'https://free-api.heweather.net/s6/weather/now?location=beijing&key=4693ff5ea653469f8bb0c29638035976', method: 'get', success(re
阅读全文
-
10.生成器
摘要:ES6 新引入了 Generator 函数,可以通过 yield 关键字,把函数的执行流挂起,为改变执行流程提供了可能,从而为异步编程提供解决方案。 基本用法 Generator 函数组成 Generator 有两个区分于普通函数的部分: 一是在 function 后面,函数名之前有个 * ; 函数
阅读全文
-
9.迭代器
摘要:Iterator是一种新的遍历机制,特点 1.迭代器是一个接口,能快捷的访问数据,通过Symbol.iterator来创建迭代器 通过迭代器的next()获取迭代之后的结果 2.对象包含了 value 和 done 两个属性, value 是当前属性的值, done 用于判断是否遍历结束(当 don
阅读全文
-
7.Map和Set
摘要:Map 对象 Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。 let map = new Map(); map.set('name','张三'); map.set('age',20); console.log(map); //Map(2) {"name" => "张三"
阅读全文
-
8.ES6 数组
摘要:数组创建 Array.of() 将参数中所有值作为元素形成数组。 console.log(Array.of(1, 2, 3, 4)); // [1, 2, 3, 4] // 参数值可为不同类型 console.log(Array.of(1, '2', true)); // [1, '2', true
阅读全文
-
6.Symbol
摘要:ES6 引入了一种新的原始数据类型 Symbol ,表示独一无二的值,最大的用法是用来定义对象的唯一属性名。 ES6 数据类型除了 Number 、 String 、 Boolean 、 Objec t、 null 和 undefined ,还新增了 Symbol 。 基本用法 Symbol 函数栈
阅读全文
-
5.对象
摘要:属性的简洁表示法 ES6允许对象的属性直接写变量,这时候属性名是变量名,属性值是变量值。 const age = 12; const name = "Amy"; const person = {age, name}; person //{age: 12, name: "Amy"} //等同于 con
阅读全文
-
5.结构赋值
摘要:概述 解构赋值是对赋值运算符的扩展。 他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。 在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。 解构模型 在解构中,有下面两部分参与: 解构的源,解构赋值表达式的右边部分。 解构的目标,解构赋值表达式的左边部分。 基
阅读全文
-
4.函数
摘要:箭头函数 使用=>来定义 function(){}等于()=>{} ES5函数 let add = function (a, b) { return a + b; } console.log(add(3,5)); //8 箭头函数 let add2 = (a, b) => { return a +
阅读全文
-
3.模板字符串
摘要:模板字符串 用反引号 `,变量用${} const oBox = document.querySelector('.box'); let id = 1, name = '小马哥'; let htmlStr = `<ul> <li> <p id=${id}>${name}</p> </li> </ul
阅读全文
-
2.let 与 const
摘要:ES2015(ES6) 新增加了两个重要的 JavaScript 关键字: let 和 const。 let 声明的变量只在 let 命令所在的代码块内有效。 const 声明一个只读的常量,一旦声明,常量的值就不能改变。 ES5中var 命令一些问题 1.变量提升 console.log(a);
阅读全文
-
1.ES6支持环境
摘要:目前各大浏览器基本上都支持 ES6 的新特性,其中 Chrome 和 Firefox 浏览器对 ES6 新特性最友好,IE7~11 基本不支持 ES6。浏览器支持的详细内容:http://kangax.github.io/compat-table/es6/
阅读全文
-
JS中for循环两种写法的坑
摘要:先看代码: 第一种写法 for(var index in divs){ console.log('div.id',divs[index].id); book_list.push(divs[index].id)} console.log('book_list',book_list); 第二种写法 fo
阅读全文
|