js
-
什么是JavaScript模块以及如何导出导入?
JavaScript模块是独立可复用的代码单元,通过export/import实现封装与通信;ES6模块为现代标准,支持命名导出、默认导出及动态导入;CommonJS仅适用于旧版Node.js环境。 JavaScript模块是一段独立的、可复用的代码单元,它封装变量、函数或类,并能明确声明哪些内容对…
-
什么是JavaScript的Hoisting现象_变量和函数声明提升如何运作?
Hoisting指变量和函数声明在编译阶段被提升至作用域顶部,但仅声明被提升,赋值和函数体不提升;var声明提升并初始化为undefined,let/const声明提升但处于TDZ,函数声明完整提升优先于var变量,函数表达式仅变量声明部分提升。 JavaScript中的Hoisting(提升)是指…
-
JavaScript中的正则表达式是什么_如何用它进行字符串匹配和替换?
JavaScript正则表达式是匹配、查找、提取或替换字符串模式的工具,支持字面量(/abc/g)和构造函数(new RegExp(“abc”,”g”))两种创建方式,常用test()、exec()、match()和replace()方法,并需注意边界…
-
Javascript如何与CSS交互_如何动态修改样式?
JavaScript通过style属性、classList和getComputedStyle等API动态控制CSS样式:直接修改element.style适用于简单内联样式;推荐用classList切换预定义CSS类;getComputedStyle用于读取最终渲染样式。 JavaScript 通过…
-
如何使用promise_javascript中处理异步操作?
Promise 是 JavaScript 处理异步的核心机制,通过 pending/fulfilled/rejected 三种不可逆状态封装未来操作,支持 .then()/.catch() 链式调用、Promise.all()/race() 并发协调及 async/await 语法糖简化异步流程。 …
-
为什么javascript是单线程的_异步编程如何实现?
JavaScript 是单线程的,因其运行环境仅提供一个调用栈和一个任务队列,避免多线程同步问题;但通过宿主环境的异步能力(如定时器、网络请求)和事件循环机制(宏任务与微任务协作),实现高效并发。 JavaScript 是单线程的,是因为它的运行环境(比如浏览器或 Node.js)只提供一个调用栈和…
-
如何使用JavaScript格式化代码_Prettier和ESLint有什么区别呢
Prettier 负责代码格式统一,ESLint 专注逻辑错误与质量检查;二者分工明确、互补协作,通过 eslint-config-prettier 避免冲突,实现提交前自动检查与格式化。 直接用 Prettier 格式化代码,用 ESLint 检查逻辑和潜在错误——两者分工明确,配合使用效果最好。…
-
什么是javascript代码分割_如何动态加载模块?
JavaScript代码分割是将大JS文件拆分为按需加载的小块以提升性能。核心是动态import()语法,支持路由、组件、工具库等多场景分割,并由Webpack/Vite等工具自动处理chunk分离。 JavaScript 代码分割(Code Splitting)是指将一个大体积的 JavaScri…
-
JavaScript中什么是SessionStorage_与LocalStorage区别
sessionStorage和localStorage生命周期与共享范围不同:前者仅限当前标签页会话,关闭即清空;后者持久存储,除非手动清除。适用场景上,前者适合临时数据如表单草稿,后者适合长期偏好如主题设置。 SessionStorage 和 localStorage 都是浏览器提供的 Web S…
-
javascript高阶函数是什么_哪些内置函数属于高阶函数?
高阶函数是接收函数为参数或返回函数的函数,如map、filter、reduce、sort等数组方法,以及setTimeout、addEventListener等;它提升代码复用性与可读性,支持函数式编程。 JavaScript 高阶函数是指**接收函数作为参数**,或者**返回函数作为结果**的函数…