标签: ES6

4 个内容

笔记(4)

本文解析了JavaScript中`var`与`let`在循环闭包中的差异,揭示了变量提升、块级作用域和词法环境等核心概念。对比了历史解决方案、现代工程实践以及其他语言的实现,强调使用`let`构建清晰作用域边界的重要性,以避免常见陷阱并提升代码可预测性。

Elliot Yang·
99 浏览

本文档介绍了 JavaScript 内置对象 Function 和 String 的相关知识。Function 部分涉及 `caller` 属性和 `this` 指向问题。String 部分讨论了 surrogate pair 的处理,以及 Unicode Decomposition 和 normalize 方法的使用。

Elliot Yang·
95 浏览

本文深入解析了 Promise 的三种状态(pending, fulfilled, rejected)、resolve参数的不同类型处理、then/catch/finally方法,以及静态方法 all, allSettled, race, any 的用法。最后,文章还提供了一个 Promise 的简单实现,并简要提及了 postMessage 相关的异步任务执行顺序问题。

Elliot Yang·
96 浏览

尾调用优化(TCO)是一种函数调用优化技术,当函数最后一个操作是调用另一个函数时,无需返回到原调用者,节省栈空间。文章解释了尾调用的概念、如何判断尾调用位置,以及如何将非尾递归函数转换为尾递归函数。TCO仅在严格模式下生效,目前仅Safari浏览器支持。

Elliot Yang·
128 浏览