回调函数
-
javascript如何迭代数组_ forEach怎么用
forEach是JavaScript中用于遍历数组并执行副作用操作的常用方法,接收含item、index、array参数的回调函数,但无法中断循环、不返回新数组、不能增删元素。 JavaScript 中迭代数组最常用的方法之一是 forEach,它能让你对数组中每个元素执行一次指定的操作,写法简洁、…
-
JavaScript filter如何用_它如何筛选元素?
filter是JavaScript数组方法,遍历原数组并返回满足条件元素的新数组,不修改原数组;回调函数需返回布尔值,常用参数为当前元素,适用于数字筛选(如n>10)和对象筛选(如u.status===’active’)。 filter 是 JavaScript 数组的…
-
JavaScript中什么是垃圾回收机制_内存泄漏场景
JavaScript垃圾回收通过标记-清除自动释放不可达对象内存,但全局变量残留、未清除定时器、未解绑事件监听器、闭包过度持有及控制台日志等会导致内存泄漏。 JavaScript 的垃圾回收机制(Garbage Collection,GC)是引擎自动管理内存的过程:它会定期识别并释放那些**不再被程…
-
javascript计时器如何使用_setTimeout和setInterval有何区别?
setTimeout只执行一次,setInterval周期性重复执行;前者适用于延时操作如防抖,后者用于轮询或倒计时,但需clearInterval手动清除以防内存泄漏。 JavaScript 中的 setTimeout 和 setInterval 都是用来延迟或周期性执行代码的计时器函数,核心区别…
-
javascript如何实现发布订阅_它与观察者模式有何不同
发布订阅模式通过事件中心实现发布者与订阅者完全解耦,核心是维护事件名到回调数组的映射,支持on、emit、off操作;而观察者模式中被观察者直接持有观察者列表,耦合度更高。 JavaScript 中的发布订阅模式(Pub/Sub)是一种松耦合的事件通信机制,核心是通过一个“事件中心”来中介发布者和订…
-
JavaScript中什么是高阶函数_map_filter如何使用
高阶函数是接收函数作为参数的函数,如map、filter、reduce、sort等;filter筛选返回true的元素生成新数组,map将每个元素映射为新值生成等长新数组,二者均不修改原数组且可链式调用。 高阶函数就是把函数当参数传进去的函数。map、filter 是最常用也最典型的两个,它们不改原…
-
JavaScript find和findIndex如何用_它们如何查找元素?
find返回第一个匹配元素值,findIndex返回其索引;均不修改原数组,找到即停,未找到时分别返回undefined和-1。 find 和 findIndex 是数组方法,用来按条件查找元素——find 返回第一个匹配的**元素值**,findIndex 返回它的**下标(索引)**。它们不修改…
-
JavaScript异步编程是什么_回调函数怎么用?
JavaScript异步编程本质是避免阻塞主线程,通过回调函数在操作完成后通知执行结果;回调可具名、匿名或箭头函数,遵循错误优先约定(err在前),多层嵌套导致回调地狱,可用Promise或async/await优化。 JavaScript异步编程,本质是让程序不卡在耗时操作上——比如发请求、读文件…
-
javascript异步是什么_回调函数和promise有何不同
JavaScript异步机制通过不阻塞主线程来保持页面响应流畅,核心方案包括回调函数(易导致回调地狱、错误分散)和Promise(用状态管理与链式调用解决嵌套、集中捕获错误、支持并发)。 JavaScript异步是指不阻塞主线程、让代码在等待耗时操作(比如网络请求、文件读取、定时器)完成时,仍能继续…
-
javascript中的Promise是什么_如何使用它处理异步操作
Promise是JavaScript中处理异步操作的对象,代表未来完成或失败的结果;具有pending、fulfilled、rejected三种不可逆状态;通过new Promise创建,支持链式调用、错误捕获及Promise.all等静态方法。 Promise 是 JavaScript 中用于处理…