Codex生成问答

发布时间:2026/7/14 5:11:22

Codex生成问答 javaScript基础1、let const var 区别var是函数作用域会变量提升容易产生作用域问题let和const是块级作用域也有提升但会照成暂时性死区const声明后无法重新赋值但对象或数组属性依然可以修改2、什么叫闭包闭包嵌套函数是闭包闭包是函数可以访问外部作用域的变量的机制。即使外部函数已经执行完了内部函数依然能访问外部函数中的变量。常见用途封装私有变量、函数缓存、柯里化、防抖、节流 核心函数可以记住并访问它创建时的词法作用域3、什么是作用域链当js查找变量时会先在当前作用域中查找找不到就到外部作用域继续查找直到全局作用域这个查找过程就叫做作用域链4、 和 的区别答 会进行类型转换后再比较。 不会进行类型转换类型和值都相等才返回 true。实际开发中推荐使用 。5、数组常见用法有哪些常见方法有 map //映射生成新数组 filter // 过滤数组 find // 查找第一个符合条件的元素 some//是否至少满足一个条件 every是否全部满足条件 reduce // 累计计算 forEach// 遍历无返回值6、map 和 forEach的区别map会返回一个新数组适合做数据转换forEach没有返回值适合执行副作用操作比如打印、修改外部变量等。7、什么是promisepromise是操作异步的一种方案有三种状态 pending//等待 fulfilled// 成功 rejected 失败可以避免函数层层嵌套问题。8、async await是什么async/await是promise的语法糖让异步代码看起来像同步代码更清晰async是包装器它把任何函数变成一个返回promise的机器await是解包器它暂停当前函数等待后面的promise敲定然后自动把promise里的value或reason解出来9、什么是事件循环 Event Loopjs是单线程同步任务先执行异步任务会进入任务队列同步代码执行完成后事件循环会把队列中的异步任务拿出来执行。10、深拷贝和浅拷贝的去呗浅拷贝只复制第一层如果对象内部还有对象复制的是引用深拷贝会递归复制所有层级修改新对象不会影响原对象11、javascript 有哪些基础类型1、string number bool undefined null symbol bigint引用数据类型主要是object array function date regexp区别 基本类型存的是值引用类型存地址typeof null 的结果是object 这是js遗留问题。判断数组推荐 isArray12、什么是作用域和作用域链作用域就是变量可以访问的范围js常见作用域有全局 函数 块级作用域当访问一个变量的时候js会先找在当前作用域查找如果找不到就去外层作用域找一直找到全局作用域这个过程叫做作用域链。13、什么是原型和原型链每个函数都有一个prototype属性每个对象都有一个内部属性通常可以通过_proto_访问。当访问对象属性时如果对象本身没有这个属性就会沿着它的原型继续查找这条查找链是原型链。14、什么是防抖和节流防抖和节流都是性能优化的手段用来减少函数执行频率事件频繁触发时只有一次触发后等待一段时间才执行。节流事件频繁触发的时候每隔多长时间执行一次TS问题15、TS js 区别ts是js的超集在js基础上增加了类型系统js是动态类型语言运行时才能发现错误TS可以在bianyi过程中发现错误提高代码可维护性16 什么是泛型泛型就是把类型作为参数传入让函数、接口或者类可以复用不同类型同时保证类型安全。17、never类型是什么never 表示永远不会出现的值通常用于函数永远不会正常返回或者联合类型的完整性检查

相关新闻