面试官常问的一些初中级前端知识点

news/2024/11/16 22:34:54/

CSS

1. 介绍下 CSS 盒子模型

回答到以下两点就可以:

  • 一个盒子由四个部分组成:content、padding、border、margin。两种盒子模型:W3C 标准盒子模型、IE 怪异盒子模型
  • 标准盒子模型 width / height 只是内容高度,不包含 padding 和 border 值;IE 怪异盒子模型 width / height 包含了 padding 和 border 值

2. flexbox 布局的属性和使用场景

关于 flex 常用的属性,我们可以划分为容器属性和容器成员属性

容器属性有:

  • flex-direction
  • flex-wrap
  • flex-flow
  • justify-content
  • align-items
  • align-content

容器成员属性如下:

  • order
  • flex-grow
  • flex-shrink
  • flex-basis
  • flex
  • align-self

使用场景:实现元素水平垂直方向的居中,以及在两栏三栏自适应布局

3. 移动端自适应方案

  • rem 方案
  • vw、vh

需要理解细节实现以及开发中单位如何转化,有兴趣可以看这篇文章移动端自适应指北

Javascript

1. ES6 常用的一些特性

  1. 解构赋值
 

js

复制代码

const { a = 2 } = { a: null } const { a = 2 } = { a: undefined }

上面两个 a 的值是什么

  1. let、var、const 的区别
  2. 怎么优化 const value = a && a.b && a.b.c,这边主要参考 ?. 用法

2. JS 类型检测的方法

  • typeof
  • instanceOf
  • Object.prototype.toString()

需要理解各个检查方法的输出

3.本地存储方式

  • cookie
  • sessionStorage
  • localStorage
  • indexedDB

各个存储方式的特点,以及使用场景。

4. 如何判断一个元素是否在可视区域中?

  • offsetTop、scrollTop
  • getBoundingClientRect,这个 API 的读取值如下

  • Intersection Observer

此 API 提供了一种异步观察目标元素与祖先元素或顶级文档视图交叉处变化的方法,简单的来说就是可以检测子元素在父元素中的可见性

5. JS 模块化方案

  • 立即执行函数
  • CommonJS
  • AMD、CMD、UMD
  • ES6 Module

大部分情况下主要问 CommonJS 和 ES6 Module 的使用和区别,有时也会问问其他方案。

6. Webpack 常使用的 Loader 和 Plugin

常见的 Loader:

  • style-loader: 将 css 添加到DOM的内联样式标签 style 里
  • css-loader :允许将 css 文件通过 require 的方式引入,并返回 css 代码
  • less-loader: 处理 less
  • sass-loader: 处理 sass
  • postcss-loader: 用 postcss 来处理 CSS
  • file-loader: 分发文件到 output 目录并返回相对路径,wepakck5 asset/resource 内置支持
  • url-loader: 和 file-loader 类似,但是当文件小于设定的 limit 时可以返回一个 Data Url,wepakck5 asset/inline 内置支持
  • babel-loader: 用 babel 来转换 ES6 文件到 ES

常见的 Plugin

  • html-webpack-plugin:在打包结束后,⾃动生成⼀个 html ⽂文件,并把打包生成的 js 模块引⼊到该 html 中
  • clean-webpack-plugin:删除(清理)构建目录,webpack5 已内置功能 output.clean
  • mini-css-extract-plugin:提取 CSS 到一个单独的文件中
  • copy-webpack-plugin:复制文件或目录到执行区域,如 vue 的打包过程中,如果我们将一些文件放到 public 的目录下,那么这个目录会被复制到 dist 文件夹中

7. React key 的作用

React 存在 Diff 算法,而元素 key 属性的作用是用于判断元素是新创建的还是被移动的元素,从而减少不必要的元素渲染。

进一步可以了解下 React Diff 算法的三个特点

  • tree 层级:DOM 节点跨层级的操作不做优化,只会对相同层级的节点进行比较
  • conponent 层级:如果是同一个类的组件,则会继续往下 diff 运算,如果不是一个类的组件,那么直接删除这个组件下的所有子节点,创建新的
  • element 层级:对于比较同一层级的节点们,每个节点在对应的层级用唯一的 key 作为标识

8. React 事件机制

主要问 React 事件的目的和与原生事件触发的先后顺序。

React 团队在源码中实现了一套事件机制来代替原生浏览器事件,其目的是:

  1. 抹平事件对象在不同浏览器上的差异,如:在不同浏览器下阻止事件冒泡(SyntheticEvent 合成事件);
  2. 与底层架构上的任务调度「优先级机制」衔接

React 采用事件委托方式,将冒泡和捕获事件统一绑定在 document, React17 及以后,不再将事件委托到 document 上,而是委托在渲染 React 应用的根 DOM 容器中

9. React useEffect 的使用

对于 useEffect,常问的几点是:

  1. useEffect 的使用,两个参数的作用
  2. useEffect 怎么模拟 componentDidMount 和 componentDidUpdate
  3. 为什么不建议 useEffect 的把第一个函数参数为设置为 async 函数

10. React useRef 的使用

useRef 这块主要问平时的使用

  1. 获取 DOM 元素,或者配置 forwardRef 获取组件示例
  2. 保存变量,相当于组件的实例变量

11. JSBrige

因为公司项目很多是手机端 h5,所有少不了和原生交互,这块知识点也会问问。

通用知识

1. 谈谈 HTTP 缓存

主要问 HTTP 缓存相关的知识,要了解浏览器请求什么时候会返回 disk cache、304、200。

具体可以看这篇文章图解 HTTP 缓存

2. 使用过哪些设计模式

前端开发中用的比较多的就是策略模式、单例模式、发布订阅、外观模式

总结

面试的题目大都是开发中会使用到的,回答的时候要讲重点,逻辑清晰即可。

 

给大家推荐一个实用面试题库

1、前端面试题库 (面试必备)            推荐:★★★★★

地址:前端面试题库


http://www.ppmy.cn/news/814909.html

相关文章

苹果备忘录怎么调字体大小_苹果备忘录误删了怎么恢复?你要知道这个办法

苹果备忘录误删了怎么恢复?苹果手机删除备忘录怎么恢复?很多小伙伴都会用iPhone备忘录记录临时事项以及一些未来计划的习惯,因此备忘录的内容越来越重要,而备忘录删除如何恢复,也困扰了越来越多iPhone用户。所以小编今…

苹果备份与恢复_短信删除了怎么恢复?这个办法你要学会

短信删除了怎么恢复?不少朋友最近咨询小编,不小心把短信删掉了怎么办?小编稍稍动了一下脑筋,想起了一个好办法~这就来给大家介绍一下。 短信是一种删除了就无法直接从手机上恢复的数据项,这时候,我们可以先…

怎样找回删除的微信好友?不用ROOT,不用数据恢复软件!而且免费!

今天我们分享一下怎样找回删除的微信好友?这个方法我认为是门槛、成本最低的方法,不需要ROOT,不使用任何数据恢复软件,操作简单,即使你换了手机依然可以找回删除的好友(与手机无关),…

苹果6s怎么导出照片_苹果照片删除怎么恢复?不知道这个办法你就亏了

苹果照片删除怎么恢复?小编最近发现,手机里的照片都已经要有接近2k的量了,强迫症突然让小编一狠心清除了一半的照片,结果出了大问题,重要的一份录像没有了!小编可急坏了,这时,小编的…

删除文件恢复软件?只需2个步骤

不小心删除了电脑的文件,不管是回收站点击还原恢复,还是Windows系统备份还原都通通不管用。那如何解决这个问题?这时您需要寻求一款删除文件恢复软件的帮助,比如数据蛙数据恢复专家软件。为什么推荐它呢?您可以看看这篇…

iphone恢复删除的文件-不要钱!

本人的目标是恢复备忘录,以此为例。 案情还原: os10以上,备忘录中有icloud的备忘录,可以同步icloud的,我的iphone的备忘录在云端上看不见,然后我就想同步过去。 按一个操作说的,把我的iphone上…

苹果备份与恢复_苹果恢复数据有哪些可以选择的途径?

手机是我们日常不可或缺的工具,同时也是记录我们生活点滴的重要道具。今天和大家谈谈如何恢复苹果的数据,尤其是恢复被删除掉的苹果数据。 由于苹果的平台有别于一般,所以在操作起来也需要相当的知识和工具。而一般常会出现的需要恢复苹果数据…

苹果手机升级后怎么恢复旧版本_手机联系人不见了怎么恢复?苹果手机恢复技巧大全!...

先点击"科学舍",再点击“关注”,这样您就可以免费收到我们的最新内容了,每天都会有更新,完全是免费订阅,请放心关注。本文转自网络,著作权属归原创者所有。如有侵权,请联系我们删除。…