JavaScript面试题,经典常问、易错集合!

本文涵盖了JavaScript面试中的常见问题,包括==与===的区别、Ajax异步执行的机制、IIFE、作用域链、闭包、设计模式、深浅克隆、DOM操作与性能、事件委托、异步任务处理以及前端存储方式等核心知识点,旨在帮助开发者准备面试。
摘要由CSDN通过智能技术生成
  1. == 和 ===的区别?
    ==: 等同 的意思, 两边值类型不同的时候,要先进行类型转换为同一类型后,再比较值是否相等。
    === :要求不仅值相等,而且也要求类型相同。不做类型转换,类型不同的结果一定返回false

  2. 在标准的 JavaScript 中, Ajax 异步执行调用基于下面哪一个机制才能实现?
    Event和callback

  3. 以下代码执行后,console 的输出是?

function Foo(){
   
    console.log(this.location);
}
Foo()

浏览器下输出当前窗口的location,node环境下输出undefined

  1. 白屏时间first paint和可交互时间dom ready的关系是?
    先触发first paint ,后触发dom ready
  2. 什么是零宽断言?
    零宽断言:即js正则前瞻表达式。由于js原生不支持后瞻表达式,所以我们不做研究。
    /?=(exp)/ : 正向前瞻,后面一定要匹配什么
    /?!exp/: 负向前瞻,后面一定不要匹配什么
  3. 经典面试题-IIFE(立即函数)
for (var i = 0; i < 6; i++) {
   
  function output() {
   
    console.log(i); // 为什么输出的是6,而不是0,1,2,3,4,5
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值