1、HTML5的新特性?

  • 1、语义化标签,比如header、footer、nav、aside、article、section
  • 2、音视频,比如audio、video
  • 3、画布canvas、矢量图svg
  • 3、画布,canvas的api有getContext、fillStyle、fillRect等
  • 4、本地存储localStorage、sessionStorage
  • 5、web worker

2、语义化的好处?

  • 1、代码分块清晰,便于维护
  • 2、页面结构清晰,便于浏览器。搜索引擎解析
  • 3、利于搜索引擎的爬取,利于SEO

3、canvas的常用api有哪些?

  • getContext:返回一个指定canvas的绘画环境对象
  • beginPath:开始绘制
  • moveTo:移动画笔位置
  • lineTo:用来画线段
  • stroke:用来实施绘制的操作
  • lineStyle:设置线段的样式
  • closePath:结束绘制

4、web worker有什么作用?应用场景有哪些?

开启一个子线程,且子线程的操作不受线程的影响

  • 大数据处理
  • 耗费时间较长的操作

5、浏览器本地缓存localStorage与sessionStorage的区别?

  • 生命周期不同:前者一直存在浏览器,除非用户手动清除,后者生命周期结束于浏览器或者tab页的关闭

CSS3

1、有哪些新特性呢?

flex、animation、transform、border-radius、box-shadow、opacity

2、背景毛玻璃的效果如何实现呢?

filter:blur()

3、position有哪几种呢?

  • static:默认
  • relative:相对于自身
  • absolute:相对于最近的一个非static的祖先级元素进行定位
  • fixed:相对于屏幕窗口进行定位
  • sticky:用来实现吸顶效果

4、如何自己实现跟position:sticky的效果?

使用getBoundingClientRect或者IntersectionObserver计算指定元素位置,到达一定距离更改指定元素定位为fixed,从而实现sticky的效果

5、重绘回流是什么呢?

文章链接

6、怎么降低重绘回流的次数呢?

文章链接

7、flex布局如何更改主轴方向?

设置flex-direction样式属性

8、flex布局如何允许换行呢?

设置flex-wrap样式属性

9、flex布局实现水平垂直据居中?

设置justify-content和align-items都为center

10、flex:1的原理是什么呢?

flex-grow 、flex-shrink 、flex-basis这三个样式的合集,全写状态为flex:0 1 auto,简写为flex: 1

11、rem与em的区别是什么呢?

  • rem:相对于<html>标签的font-size去决定大小,例如html标签font-size为14px,则2rem === 28px
  • em:相对于自身的font-size去决定大小,自身没有font-size则继承祖先级元素的font-size

JavaScript

1、原型链是什么呢?有什么作用吗

  • 原型链:原型链是一条对象隐式原型不断往上指向的一条指向链,尽头是Object的隐式原型,也就是null
  • 作用:构造函数原型上的东西可以让实例们共享,从而节省了空间

2、闭包是什么?有什么优缺点

闭包是一个能让函数外部访问到函数内部的一个函数

  • 优点是:延长函数内部变量的寿命,使函数外部能访问到函数内部
  • 缺点是:滥用闭包导致内存溢出,页面卡顿

3、JavaScript总共有几种数据类型?

字符串、布尔值、数值、undefined、null、object、symbol、bigInt

4、JavaScript判断类型的方式是什么?

  • typeof:只能判断 字符串、布尔值、数值、undefined、function、object、symbol、bigInt,不能区分判断 数组、null、对象
  • A instanceof B:判断A是否为B的实例对象,从而判断A是否为B类型
  • Object.prototype.toString.call():可以判断所有的数据类型

6、JavaScript不同类型的存储方式有何区别?

普遍认为

  • 基础数据类型存于栈内存
  • 引用数据类型存于堆内存 我认为
  • 所有数据都存于堆内存,栈内存只存指针

7、你说字符串存储在栈内存,那如果字符串很长。超过了栈内存最大容量呢?

所以说我觉得所有数据都存于堆内存,毕竟栈内存容量有限。

8、call、apply、bind的区别?

  • call于apply的区别在于传参,前者直接传参,后者传一个数组
  • bind传参后不立即执行,而是会返回一个函数,这个函数可以继续传参,且执行(bind函数可以分两次传参)

9、bind返回的函数能作为构造函数吗?

不能哦,会报错的

10、赋值、深拷贝与浅拷贝有什么不同?

  • 赋值:赋值指针指向,还是用的同一个内存空间
  • 浅拷贝:只拷贝第一层
  • 深拷贝:所有层都会进行拷贝

11、怎么判断一个对象有环引用呢?

定义一个空数组,且对于目标对象进行递归,每次都判断递归项是否为对象,是的话放进数组,且每次判断属性值是否在数组里,在的话说明环引用了

function cycleDetector(obj) {const arr = [obj]let flag = falsefunction cycle(o) {const keys = Object.keys(o)for (const key of keys) {const temp = o[key]if (typeof temp === &apos;object&apos; && temp !== null) {if (arr.indexOf(temp) &gt;= 0) {flag = truereturn}arr.push(temp)cycle(temp)}}}cycle(obj)return flag
}

ES6

1、let、const的暂时性死区问题?

在一个作用域里如果存在let、const定义的一个变量之前使用该变量,则报错“cannot access xx before initialization”

2、Promise的then为什么可以链式调用?

Promise的then方法返回一个新的Promise对象,保证了then方法可以进行链式调用

3、async/await的用法?

  • async/await的作用是:以同步的方式执行异步操作,实现排队效果
  • async:async函数执行返回一个Promise
  • await:await后接Promise则会等待Promise返回结果,接普通函数执行则会接收返回结果
  • await只能在async中使用,但是浏览器调试中await可单独使用

4、Class的静态属性、继承?

  • 静态属性:static关键字定义的变量属性,只能通过Class构造函数的属性的方式去访问
  • 继承:使用 Child extends Father {},且配合super对象,完成继承

Vue

1、Vue与React的区别在哪?

比较的是Vue2 相同点:

  • 1.都使用了虚拟dom
  • 2.组件化开发
  • 3.都是单向数据流(父子组件之间,不建议子修改父传下来的数据)
  • 4.都支持服务端渲染 不同点:
  • 1.React的JSX,Vue的template
  • 2.数据变化,React手动(setState),Vue自动(初始化已响应式处理,Object.defineProperty,Proxy)
  • 3.React单向绑定,Vue双向绑定
  • 4.React的Redux、mobx,Vue的Vuex、pinia

2、computed与watch的区别?

  • computed:多对一,多个值的变化决定一个目标值的变化
  • watch:一对多,一个值的变化,引起多个目标值的变化

3、Vue的生命周期介绍一下?

4、Vue的实例加载完成在哪个生命周期呢?

beforeCreated

5、Vue的真实dom挂载完成在哪个生命周期呢?

mounted

6、数据更改如何获取最新DOM

nextTick

7、路由有几种模式,有何区别?

  • hash模式:监听url中hash的变化来实现不同页面的展示,链接带#
  • history模式:url中不带#,利用HTML5的history.pushState方法进行不刷新跳转页面,但需要后端配合404时的重定向
  • abstract:使用在非浏览器的环境,例如node环境

8、路由有哪些钩子函数?

全局钩子

  • beforeEach:跳转路由前

    • to:将要跳转进入的路由对象
    • from:将要离开的路由对象
    • next:一个方法,执行则完成跳转
  • afterEach:跳转路由后
    • to:将要跳转进入的路由对象

路由独享钩子

routes: [{path: &apos;/xxx&apos;,component: xxx,beforeEnter: (to, from, next) =&gt; {}}
]

组件内路由钩子

  • beforeRouteEnter(to, from, next):跳转路由渲染组件时触发
  • beforeRouteUpdate(to, from, next):跳转路由且组件被复用时触发
  • beforeRouteLeave(to, from, next):跳转路由且离开组件时出触发

如果对你有帮助请给小编一个点赞加评论

2022前端面试题附答案.相关推荐

  1. web前端面试题(附答案)

    web前端面试题 1.src和href的区别 ? href: Hypertext Reference的缩写,超文本引用,多数用于a link 标签 看下图 加载他们的时候 不会停止对当前页面的加载 浏 ...

  2. web前端面试题附答案044 - vue获取param参数,有什么缺点吗?

    看这个vue的图标像不像小时候看的<魔神坛斗士>身上的某个元素.真希望成年人的世界就像小时候一样简单快乐. 今天这道面试题主要围绕vue中获取param参数展开,看完本文你可以吸取到以下知 ...

  3. 来自大厂 10+ 前端面试题附答案(整理版)

    跨域方案 很多种方法,但万变不离其宗,都是为了搞定同源策略.重用的有 jsonp.iframe.cors.img.HTML5 postMessage等等.其中用到 html 标签进行跨域的原理就是 h ...

  4. web前端面试题附答案035-关于number考点大全,走过路过不会错过

    1.如何创建一个number数值型的变量 <script>// 创建一个10进制number数值var num = 5;var num2 = 5.55;// 创建一个16进制的数值var ...

  5. 2022年最新互联网大厂前端面试题及答案-前端工程必备技能(持续整理更新中【关注收藏不迷路】)

    对于做前端的朋友,或者做了前端几年了,基础不好的,或者想进大厂的想了解深入,下面的知识点很多前端朋友都没有深入了解.很重要,看完有种茅塞顿开感觉,**关注+收藏哦,总有一天用的得.** 涉及到知识点: ...

  6. 前端面试题及答案整理(2022最新版)

    收集整理2022年最新前端面试题及答案,方便平时翻看记忆,欢迎各位大佬们补充. 一般来说,把下面基础中的高频题写熟练就差不多了.当然去面大厂这些远远不够,还要再刷一些算法题. 基础 高频 1.手写 i ...

  7. 前端周报:前端面试题及答案总结;JavaScript参数传递的深入理解

    1.2017前端面试题及答案总结 |掘金技术征文 "金三银四,金九银十",用来形容求职最好的几个月.但是随着行业的饱和,初中级前端er就业形势不容乐观. 行业状态不可控,我们能做的 ...

  8. html5试卷答案,常见的HTML5前端面试题及答案

    原标题:常见的HTML5前端面试题及答案 随着互联网技术的日渐成熟,用人单位在面试时,不仅考察面试者的技术掌握情况,更加注重人才对于理论知识的考量.因为理论知识掌握扎实证明面试者接受过专业的训练,深知 ...

  9. 前端面试题及答案:app怎么做适配的?

    前端面试题及答案:app怎么做适配的?下面一起来看看吧! 基于手机系统开发的app(原生Android/IOS) 另外一种是webapp 设置以下标签: 具体的含义为:app完成的页面的宽度等于设备的 ...

最新文章

  1. mysql中sql语句
  2. 读样章、写评语,即有机会获赠《编程大师访谈录》!
  3. [笔记]NumPy基础操作
  4. 数据结构:平衡二叉树概念、旋转
  5. DirectSound学习笔记(3):协作级别
  6. Linux 下编译并运行C++程序
  7. 开源开放 | Beyond 预训练语言模型,NLP还需要什么样的知识?
  8. 解决outlook2013设置错误无法启动
  9. Thinkphp3.2 分页带中文参数报错
  10. 08Vue.js快速入门-Vue综合实战项目
  11. 创建Web Service后,客户端不能调用的解决办法(提示:此方法只有在本地才可以使用)...
  12. C# string 判断字符串是否是中文
  13. ansible、ansible tower的安装以及基本使用
  14. CentOS历史版本下载
  15. 台式计算机安装无线网卡驱动程序,台式机无线网卡驱动,小编教你台式机无线网卡驱动如何安装...
  16. The Dominator of Strings
  17. 经验分享:半小时建立自己的在线管理系统!
  18. Docker容器化开发流程(一)介绍
  19. 【踩坑记录】colmap中的相机位姿的坐标系定义及其可视化结果的隐含转换
  20. 电脑连不上网络, 并且宽带连接是灰色的

热门文章

  1. js 二叉树图形_JS实现二叉树 - 山海散客 - OSCHINA - 中文开源技术交流社区
  2. ISO26262 - Coverage
  3. 华为中国生态大会2021:因聚而生 有能有为
  4. 中国城市交通自动控制起源 | 7386工程背后的故事
  5. Wingdings字体
  6. 计算机英语司爱侠第二版全文,计算机英语 第2版 配套习题 作者 司爱侠 张强华 参考试卷.doc...
  7. win10默认浏览器不显示谷歌浏览器_浅析win10系统谷歌浏览器网页显示不正常的应对办法...
  8. 百度Paddle深度学习框架学习
  9. PPTV网站强化移动视频高端内容
  10. 服务器ubuntu系统安装后黑屏,ubuntu 成功安装后开机黑屏或闪屏