前端面试题(一)

embedded/2024/9/25 3:18:35/

1. HTML 和 CSS 面试题

  • 如何在 HTML 中嵌入 CSS?

    • CSS 可以通过三种方式嵌入:外部样式表(<link>标签),内部样式(<style>标签),和行内样式(通过元素的style属性)。
  • 块级元素和内联元素的区别?

    • 块级元素会独占一行,典型例子有 <div>, <h1>, <p> 等。内联元素则不会独占一行,常见的如 <span>, <a>
  • flexbox 和 grid 布局的区别?

    • Flexbox 主要用于一维布局(水平或垂直方向),而 Grid 则擅长二维布局,可以在水平和垂直方向上进行更复杂的排列。

2. JavaScript 面试题

  • var, letconst 的区别?

    • var 有函数作用域,可以在声明之前使用(变量提升),而 letconst 都有块级作用域,声明之前不可用。const 声明的变量不能重新赋值。
  • 什么是闭包?

    • 闭包是指函数能够记住并访问它的词法作用域,即使在函数执行完成后,依然可以访问外部函数中的变量。
  • 事件冒泡和事件捕获的区别?

    • 事件冒泡是指事件从目标元素开始逐级向上传播,而事件捕获则是从根节点逐级向下传递到目标元素。

3. 浏览器行为

  • 浏览器的渲染流程是怎样的?

    • 浏览器首先解析 HTML 和 CSS 生成 DOM 树和 CSSOM 树,然后结合这两者生成渲染树,最后通过布局和绘制步骤展示页面。
  • 为什么 CSS 会阻塞渲染,而 JS 会阻塞 DOM 解析?

    • CSS 阻塞渲染是因为浏览器需要先计算样式才能绘制页面。JavaScript 会阻塞 DOM 解析是因为它可能会修改 DOM 结构,因此必须等到 JS 加载完毕并执行后再继续解析。

4. Vue.js 相关问题

  • Vue 的双向数据绑定是如何实现的?

    • Vue.js 通过 Object.defineProperty(Vue 2)或 Proxy(Vue 3)来实现数据劫持,当数据发生变化时,自动触发视图更新。
  • Vue 生命周期中的 mountedcreated 有什么区别?

    • created 阶段,实例已经创建,可以访问数据和方法,但尚未挂载 DOM。mounted 时,实例已挂载,DOM 可以访问。
  • 如何在 Vue 中实现组件之间的通信?

    • 父子组件可以通过 props$emit 进行通信,兄弟组件可以通过事件总线或使用 Vuex 实现全局状态管理。

5. 性能优化

  • 前端性能优化有哪些常见手段?
    • 使用懒加载、减少 DOM 操作、压缩和合并文件、使用 CDN、缓存、避免内存泄漏。

http://www.ppmy.cn/embedded/116415.html

相关文章

【趣学Python算法100例】打鱼还是晒网

问题描述 中国有句俗语叫“三天打鱼两天晒网”。某人从1990年1月1日起便开始“三天打鱼两天晒网”&#xff0c;问这个人在以后的某一天中是“打鱼”还是“晒网”。 问题分析 根据题意可以将解题过程分为以下三步&#xff1a; 计算从1990年1月1日开始至指定日期共有多少天。…

【C语言】猜数字游戏

个人主页 &#xff1a; zxctscl 如有转载请先通知 文章目录 前言1. 随机数生成1.1 rand1.2 srand1.3 time1.4 设置随机数的范围 2. 猜数字游戏实现2.1 游戏菜单2.2 主函数部分2.3 game函数部分2.4 附代码2.5 优化代码 前言 前面学习的这些知识&#xff0c;我们就可以写一些稍微…

数据库性能优化之分表

markdown # 1 背景 在生产站点&#xff0c;我们发现 MySQL 任务表的数据超过了 1700 万行&#xff0c;占用了高达 23G 的空间&#xff0c;导致数据库性能急剧下降&#xff0c;并出现了大量的 504 错误。分析数据后发现&#xff0c;有两个客户疯狂地创建任务&#xff0c;其中一…

Python闭包与装饰日高级概念

在Python中&#xff0c;闭包&#xff08;Closure&#xff09;和装饰器&#xff08;Decorator&#xff09;是两个高级且强大的编程概念&#xff0c;它们在函数式编程和面向对象编程中扮演着重要角色。下面将详细讲解这两个概念。 一、闭包&#xff08;Closure&#xff09; 1. …

如何使用ssm实现基于VUE的儿童教育网站的设计与实现+vue

TOC ssm676基于VUE的儿童教育网站的设计与实现vue 第一章 课题背景及研究内容 1.1 课题背景 信息数据从传统到当代&#xff0c;是一直在变革当中&#xff0c;突如其来的互联网让传统的信息管理看到了革命性的曙光&#xff0c;因为传统信息管理从时效性&#xff0c;还是安全…

vue3开发中易遗漏的常见知识点

文章目录 组件样式的特性Scoped CSS之局部样式的泄露Scoped CSS之深度选择器CSS Modules在CSS中使用v-bind 非props属性继承组件通信父子组件的相互通信props/$emit父组件传递数据给子组件子组件传递数据给父组件 非父子组件的相互通信Provide/inject全局事件总线 组件插槽作用…

WPF 控件数据源绑定

WPF 控件数据源绑定 前提&#xff1a;我的数据源都放在 DataProcessView 类中&#xff0c;然后在 MainWindow 中声明该类的对象 DataProcess&#xff0c;如果是指定了 DataContext &#xff0c;就将该对象赋值给 DataContext &#xff08;如下&#xff09;&#xff0c;否则不赋…

SpringBoot基础知识

谈一谈你对SpringBoot的理解&#xff0c;它有哪些特性&#xff08;优点&#xff09;&#xff1f; SpringBoot用来快速开发Spring应用的一个脚手架&#xff0c;其目的是用来简化新Spring应用的初始搭建以及开发过程。 优点&#xff1a; 简化配置&#xff1a;提供了很多内置的…