ES6 Promise用法小结

Promise对象是用于处理异步操作的一种机制,具有两个特点:状态(pending、fulfilled或rejected)仅由其结果决定且不可变;一旦状态确定,该结果将一直可用。通过`new Promise`创建,并使用`resolve`和`reject`来改变状态。Promise允许链式调用`.then()`进行成功回调,`.catch()`捕捉错误,而`.all()`等待所有Promise完成,`.race()`则以最先完成的为准。这些特性使得Promise在处理多层异步逻辑时更加简洁有效。例如,可以设置一个请求超时机制,利用`.race()`实现,在指定时间内未完成则触发失败处理。


记录一个javascript中map/forEach循环中await未生效的问题

文章讨论了在使用`map`循环时,即使内部使用了`await`,外部代码也会优先执行的问题。原因是`map`内部通过回调函数执行,`await`不会等待这些回调完成。为解决此问题,提出了两种方法:一是使用`Promise.all`包裹`map`操作,二是采用传统的`for`循环来确保异步操作按顺序执行。


js 数值金额计算错误

该代码示例展示了JavaScript中浮点数运算的精度问题,直接进行加减操作时可能会得到不准确的结果(如2.51 + 0.01得到2.5199999999999996)。而使用currency函数处理数值后执行相同操作,则能得到预期的精确结果(如2.51 + 0.01正确得到2.52)。


前端杂烩

本文是作者的 Web 前端阅读资源汇总,根据个人阅读的认可度给出以下标签分类: 可选:文章内容不具备普适性,阅读该文或许可以扩展知识面 推荐:文章内容具有普适性,但不一定具备实用性,阅读该文或许可以获得必要的知识面提升 必读:文章内容具备普适性,且具备实用性,阅读该文或许可以获得必要的技能提升 进阶


正则集锦

本文档列举了多种常用正则表达式,涵盖手机号、邮箱、身份证号等号码相关验证,数字、字符及时间格式校验,以及编程和生活领域中的特定格式如颜色代码、文件路径、金额表示等。每条正则表达式都针对特定的字符串模式设计,帮助开发者快速实现数据格式的合法性检查。此外,还提供了两个在线学习正则表达式的网站链接。


56个JavaScript高级的手写知识点

本文详细介绍了多种JavaScript面试中常见的编程题目及其解决方案,包括实现原生AJAX请求、手写`new`操作符、使用`instanceof`关键字判断对象类型、实现防抖和节流函数等。此外,还涵盖了数组去重、用`setTimeout`模拟`setInterval`、实现`compose`和科里化函数、LRU缓存机制、简单的发布订阅模式、JSON解析、DOM与树结构之间的转换、检测对象中的环引用及计算对象层数等功能。文章通过具体代码示例展示了如何解决这些常见问题,并提供了关于数组、对象、函数、字符串以及Promise相关方法的手动实现版本,如`forEach`、`map`、`call`、`apply`、`bind`、`slice`等,帮助读者深入理解JavaScript底层原理。


10个常见的前端手写功能,你全都会吗?

本文介绍了10个常见的JavaScript手写功能,包括防抖、节流、深拷贝(JSON方法和递归拷贝)、自定义Promise实现、异步控制并发数、ES5与ES6继承方式、数组排序(sort和冒泡排序)、数组去重(Set和indexOf方法)、获取URL参数(URLSearchParams和split方法)以及发布订阅模式。每个功能都附有代码示例和简要说明,帮助读者理解和掌握这些实用技巧。


前端小工具集合

本文汇总了前端开发中常用的工具包,涵盖组件类、音视频处理、时间处理、编辑器、Markdown转换、拖拽插件、特效、动画库、数字处理、UI框架、Node.js相关工具、调试工具、评论系统、文件操作、实用工具、SVG优化、加密、图片处理、模板引擎、自动化测试、工程化工具、安全相关工具以及React Native组件等多个类别。每种类别下都列举了具体的工具和库,并提供了相应的链接供开发者参考使用。