ES2017 async 函数基本用法

介绍了 async 函数的基本概念和语法,强调其返回 Promise 对象的特性,并结合 await 命令的使用说明了异步操作的执行流程。通过示例展示了 async 和 await 的实际应用,说明其能够有效控制异步任务的执行顺序。

H5 localStorage入门

讲解了 localStorage 的定义、属性及常用方法,包括 setItem、getItem、removeItem 和 clear 的使用方式。介绍了如何存储和读取复杂数据类型,并通过监听 storage 事件实现浏览器标签间通信。强调 localStorage 的使用限制,如同域名限制、低版本浏览器兼容性及移动端潜在问题,并提供跨域通信的解决方案。

ES6 Promise 对象 then 方法链式调用

介绍了 then() 方法为 Promise 添加解决 (fulfillment) 和拒绝 (rejection) 状态回调的功能,其返回一个新的 Promise 实例以支持链式调用。若回调函数返回另一个 Promise 实例,则后续 then() 方法会等待该 Promise 状态改变后再执行,体现异步操作的串联特性。

ES6 通过 Set 数组去重

介绍了 Set 数据结构的定义、语法及常用方法,包括 add、delete、has 和 clear,支持存储任意类型的唯一值。通过 Set 可实现数组去重,利用扩展运算符将 Set 转换为数组,简化去重操作并保留原始数据顺序。

通过尾递归避免栈溢出

介绍了 JavaScript 中递归的基本概念及其内存开销,指出递归调用会因栈空间限制导致溢出错误。同时提到尾递归优化理论上能避免栈溢出,但当前浏览器尚未完全支持尾递归优化,因此在实际使用中仍需注意性能问题。

JavaScript 表示 x 的 y 次幂

介绍了 JavaScript 中指数运算符 (**) 和 Math.pow() 方法的用法与区别。指数运算符直接进行幂运算,支持赋值操作;Math.pow() 方法通过函数调用实现幂运算,语法更传统。两者均支持字符串类型转换为数值进行计算,示例展示了实际应用场景。