返回

JS综合面试试题汇总,记一次大厂面试经历

前端

前言

最近一段时间,我参加了多场大中小厂的面试,遇到了各种各样的问题。为了帮助其他正在备战面试的同学,我决定把这些问题汇总起来,并加入我自己的口头总结。希望对大家有所帮助。

JS基础

  • 什么是JavaScript?

    • JavaScript是一种高级编程语言,常被用于创建交互式网页和Web应用程序。
  • JavaScript的特点有哪些?

    • 跨平台:可以在任何支持JavaScript的平台上运行。
    • 动态类型:变量无需明确声明类型。
    • 面向对象:支持面向对象编程,可以创建对象和类。
    • 函数式:支持函数式编程,可以创建匿名函数和闭包。
  • JavaScript的执行机制是什么?

    • JavaScript使用解释器来执行代码。
    • 解释器逐行读取代码,并将代码转换为机器可以理解的指令。
    • 然后,机器执行这些指令,并产生结果。
  • JavaScript的数据类型有哪些?

    • JavaScript支持六种基本数据类型:字符串、数字、布尔值、null、undefined和Symbol。
    • JavaScript还支持数组、对象和函数等复合数据类型。
  • JavaScript的运算符有哪些?

    • JavaScript支持算术运算符、比较运算符、逻辑运算符和赋值运算符等。
  • JavaScript的控制语句有哪些?

    • JavaScript支持if语句、switch语句、for循环、while循环和do-while循环等控制语句。
  • JavaScript的函数有哪些?

    • JavaScript支持内置函数和自定义函数。
    • 内置函数是JavaScript语言的一部分,不需要我们自己定义就可以使用。
    • 自定义函数是我们自己定义的函数,可以根据需要来创建。

HTML

  • 什么是HTML?

    • HTML是超文本标记语言(Hypertext Markup Language)的缩写,是一种用于创建网页的标记语言。
  • HTML的特点有哪些?

    • 易学:HTML的语法简单易懂,即使是新手也可以快速掌握。
    • 通用:HTML可以在任何支持HTML的浏览器上显示。
    • 强大:HTML可以创建各种各样的网页,包括静态网页、动态网页和Web应用程序。
  • HTML的结构是什么?

    • HTML文档由一系列元素组成,每个元素都有一个开始标签和一个结束标签。
    • 元素可以嵌套,形成树状结构。
  • HTML的元素有哪些?

    • HTML有很多元素,常用的元素包括<head><body><div><p><a><img>等。
  • HTML的属性有哪些?

    • HTML元素可以有属性,属性用于指定元素的特性。
    • 常见的属性包括<id><class><src><href>等。

DOM

  • 什么是DOM?

    • DOM是文档对象模型(Document Object Model)的缩写,是一种用于表示HTML文档的树形结构。
  • DOM的特点有哪些?

    • 统一:DOM为不同的浏览器提供了一个统一的编程接口,使我们可以轻松地操作HTML文档。
    • 灵活:DOM允许我们动态地改变HTML文档,从而实现各种交互效果。
    • 强大:DOM可以用来创建各种各样的Web应用程序,包括游戏、动画和表单等。
  • DOM的结构是什么?

    • DOM是一个树形结构,根节点是<html>元素,其他元素都是<html>元素的后代。
  • DOM的元素有哪些?

    • DOM的元素与HTML元素一一对应。
  • DOM的属性有哪些?

    • DOM的属性与HTML属性一一对应。

浏览器

  • 什么是浏览器?

    • 浏览器是一种用于访问网页的软件。
  • 浏览器的功能有哪些?

    • 浏览器可以解析HTML、CSS和JavaScript代码,并将其呈现给用户。
    • 浏览器可以管理历史记录、书签和Cookie。
    • 浏览器可以提供各种安全功能,例如HTTPS和SSL。
  • 浏览器的类型有哪些?

    • 浏览器有很多种,常见的浏览器包括Chrome、Firefox、Safari、Edge和Opera等。
  • 浏览器的内核是什么?

    • 浏览器的内核是浏览器的核心部分,负责解析HTML、CSS和JavaScript代码,并将其呈现给用户。
    • 常见的浏览器内核包括WebKit、Gecko、Blink和EdgeHTML等。

执行上下文

  • 什么是执行上下文?

    • 执行上下文是JavaScript代码运行的环境。
  • 执行上下文的作用是什么?

    • 执行上下文提供了一个独立的作用域,变量和函数只能在自己的执行上下文中访问。
    • 执行上下文还提供了一个调用栈,记录了当前正在执行的函数。
  • 执行上下文的类型有哪些?

    • 执行上下文有两种类型:全局执行上下文和函数执行上下文。
    • 全局执行上下文是在脚本加载时创建的,它包含了脚本中的所有全局变量和函数。
    • 函数执行上下文是在函数被调用时创建的,它包含了函数的参数和局部变量。
  • 执行上下文是如何工作的?

    • 当脚本加载时,全局执行上下文被创建。
    • 当函数被调用时,函数执行上下文被创建。
    • 执行上下文是按照栈的方式组织的,最近创建的执行上下文位于栈顶。
    • 当函数执行完毕后,函数执行上下文被销毁。
    • 当脚本执行完毕后,全局执行上下文被销毁。