昨天面试的时候被提问到的问题集合(答案)

news2024/9/24 15:25:19

1、vue的双向绑定原理是什么?里面的关键点在哪里?
Vue的双向绑定原理是基于Object.defineProperty或者Proxy来实现的,其关键点在于数据劫持,即对数据的读取和修改进行拦截,在数据发生变化时自动更新视图

2、实现水平垂直居中的方式?
实现水平垂直居中的方式有多种,比如使用Flex布局、绝对定位、margin负值等。

3、常用伪元素有哪一些?
常用的伪元素有before和after。

4、移动端如何适配不同屏幕尺寸?
移动端可以通过设置meta标签中的viewport属性来适配不同屏幕尺寸,例如设置width=device-width、initial-scale=1等。

5、本地存储有哪一些?他们三者有什么区别?
常见的本地存储方式有cookie、localStorage和sessionStorage,它们的区别在于作用域、存储容量和过期时间等方面。

6、JS的数据类型?如何判断js的数据类型?
JavaScript的数据类型包括Number、String、Boolean、Object、Null和Undefined等,可以使用typeof、instanceof和Object.prototype.toString.call()等方法来判断数据类型

7、说一下ES6的新特性有哪些?
ES6的新特性包括let和const关键字、箭头函数、模板字符串、解构赋值、类和继承、模块化等。

8、Let、const、var三者有什么区别?
let和const是块级作用域的关键字,var是函数作用域的关键字,let和const声明的变量不能重复声明,const声明的变量不可修改。

9、数组去重有哪些办法?
数组去重的方法包括利用构造函数Set的去重功能、使用循环遍历和对象属性去重等。

10、说一下深拷贝和浅拷贝,如何自己实现一个深拷贝?
深拷贝和浅拷贝是指在复制对象时,是否对其内部的子对象进行递归复制。实现深拷贝可以使用JSON.parse(JSON.stringify(obj))、递归复制等方法。

11、Vue的生命周期有哪一些?说一下它们每个阶段做什么操作?
Vue的生命周期包括beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy和destroyed等阶段,每个阶段对应着不同的操作,例如数据初始化、DOM挂载和销毁等。

12、组件通讯方式有哪一些?
组件通讯方式有props、 e m i t 、 emit、 emitparent/ c h i l d r e n 、 p r o v i d e / i n j e c t 和 children、provide/inject和 childrenprovide/injectrefs等。

13、Vuex有几个属性及作用?
Vuex的属性包括state、getters、mutations、actions和modules等,它们用于管理Vue应用中的状态。

14、Vue的监听属性和计算属性有什么区别?
Vue的监听属性和计算属性都用于监测数据变化,但监听属性是一个函数,需要手动调用,而计算属性是一个属性,会自动计算并缓存结果

15、说一下防抖和节流。怎么实现?
防抖和节流是用于控制函数执行频率的方法,防抖是在一定时间内只执行最后一次操作,节流是在一定时间内只执行一次操作。可以通过setTimeout和时间戳等方式实现。

16、Vue的导航守卫有哪一些?
Vue的导航守卫包括全局前置守卫、全局后置钩子、路由独享守卫和组件内的守卫等

17、你的登录拦截怎么实现的?
登录拦截可以通过路由守卫、请求拦截和响应拦截等方式实现

18、有用过图表吗?用的多吗?
常见的图表库包括ECharts、Highcharts、D3等

19、闭包是什么?如何实现?
闭包是指函数内部可以访问外部函数的变量,可以用于封装私有变量和实现柯里化等操作。

20、Vue2.0和vue3.0有什么区别?
Vue2.0和Vue3.0的区别在于性能优化、组合式API、响应式系统和虚拟DOM等方面。

21、Vue常用的指令有哪些?
Vue常用的指令包括v-model、v-for、v-if、v-show、v-bind、v-on等。

22、v-If和v-show有什么区别?
v-if和v-show的区别在于前者在条件为false时会销毁对应的DOM元素,而后者只是在样式上隐藏元素。

23、v-for为什么要加一个key?
v-for需要加key属性是为了帮助Vue识别节点的唯一性,提高渲染效率。

24、你是如何封装一个组件的?
封装一个组件需要考虑组件的输入和输出,可以使用props和$emit等方式实现。

25、有自己从0到1搭建过项目吗?
从0到1搭建一个完整的项目需要考虑项目架构、技术选型、开发流程、测试和部署等方面

26、有用过uni-app吗?
uni-app是一款基于Vue的跨平台开发框架,可以用于快速开发小程序、H5、APP等应用。

27、你会写后台吗?有搞过服务端渲染吗?
后台开发需要掌握服务器端语言和数据库等技术,服务端渲染可以提高页面的首屏加载速度和SEO效果。

28、说一下你项目中遇到的难点,如何解决?
在项目中遇到的难点可能包括架构设计、性能优化和业务逻辑等方面,需要通过调试和优化等方式解决

29、Url到浏览器的一个过程有哪些步骤?
URL到浏览器的过程包括DNS解析、建立TCP连接、发送HTTP请求、服务器处理请求、浏览器解析渲染页面等步骤

30、如何实现小程序的request封装及拦截?
可以通过封装request函数和使用拦截器等方式实现小程序的请求封装和拦截。

31、在vue的项目应用中,不使用框架,怎么封装?
在Vue项目中不使用框架可以使用原生的HTML、CSS和JavaScript来实现,需要手动处理数据和事件等方面。

32、什么是Js原型?原型链是什么?
JavaScript的原型是指每个对象都有一个原型对象,原型对象又有自己的原型,形成了一条原型链。

33、组件通讯方式有哪些?
组件通讯方式包括props、 e m i t 、 emit、 emitparent/ c h i l d r e n 、 p r o v i d e / i n j e c t 和 children、provide/inject和 childrenprovide/injectrefs等。

34、用闭包的原理做过哪些?
闭包可以用于实现柯里化、封装私有变量和缓存等操作。

35、作用域是什么?
作用域是指变量的可访问范围,JavaScript中有全局作用域和函数作用域等

36、操作数组的方式有哪些?
操作数组的方式包括遍历数组、添加和删除元素、数组去重和排序等。

37、0.1 + 0.2 等于 0.3吗?为什么?如何解决?
0.1 + 0.2不等于0.3,这是因为JavaScript采用的是IEEE 754浮点数标准,存在精度问题。可以使用toFixed方法处理。

38、keep-alive是什么?有哪几个生命周期阶段?
keep-alive是Vue中的一个组件,用于缓存组件实例,提高组件的渲染效率,其生命周期包括activated和deactivated等阶段

39、判断一个变量是否是数组,有哪些办法?
判断一个变量是否是数组可以使用Array.isArray和instanceof等方法。

40、判断一个变量是否是对象,有哪些办法?
判断一个变量是否是对象可以使用typeof和Object.prototype.toString.call()等方法。

41、对象/数组常用方法有哪些?
对象/数组常用方法包括push、pop、shift、unshift、slice、splice、concat、map、filter、reduce等。

42、创建一个空数组/空对象有哪些方式?
创建一个空数组可以使用[]或new Array(),创建一个空对象可以使用{}或new Object()。

43、哪些遍历方式会改变原数组?
使用forEach、map、filter、reduce等遍历方式不会改变原数组,而使用push、pop、shift、unshift、splice等方法会改变原数组

44、Set和Map各是什么?
Set是一种数据结构,用于存储唯一值,Map是一种键值对数据结构,用于存储任意类型的键和值

45、介绍一下promise。
Promise是一种异步操作管理的解决方案,用于解决回调地狱问题,其特点是链式调用和状态机制

46、Promise通常会解决三种问题

(1)链式回调

(2)同时发起几个异步请求,谁先有结果就拿谁的

(3)发起多个请求,等到所有请求后再做下一步处理

这三种方式promise是怎么处理的?

Promise可以通过then方法实现链式回调,通过Promise.all方法实现同时发起多个异步请求,通过Promise.race方法实现等待多个异步请求的结果

47、如何改变一个函数a的上下文?
可以使用bind、apply和call等方法改变一个函数的上下文

48、Call和replay有什么区别?
call和apply都是用于改变函数上下文的方法,区别在于传入参数的方式不同

49、Evenbus是什么东西?
EventBus是一种事件发布/订阅的机制,可以实现组件之间的通讯

50、Vue中普通的生命周期大概有哪些?
Vue中普通的生命周期包括beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy和destroyed等阶段。

51、父子组件生命周期执行顺序是怎么样的?
父子组件生命周期执行顺序是父beforeCreate -> 父created -> 父beforeMount -> 子beforeCreate -> 子created -> 子beforeMount -> 子mounted -> 父mounted。

52、mixins有几个生命周期阶段?
mixins有beforeCreate、created、beforeMount、mounted、beforeUpdate、updated、beforeDestroy和destroyed等生命周期阶段。

53、弹性布局,一行两列,一列固定宽,如何实现?
实现一行两列,一列固定宽的水平垂直居中布局可以使用Flex布局,父元素设置display: flex、align-items: center和justify-content: center,左侧元素设置flex: 1,右侧元素设置固定宽度

54、Flex:1 包含哪三种属性
Flex:1包含flex-grow、flex-shrink和flex-basis三个属性,分别表示元素在剩余空间中的占比、元素在空间不足时的缩放比例和元素的基准大小。

工具大全:https://aiburgeon.com/siteCollection/

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/958322.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python读取遥感影像并计算NDVI指数

Python读取遥感影像并计算NDVI指数 先附上源码 读取的遥感影像数据需要先进行预处理 from osgeo import gdal import numpy as np import pandas as pd import os np.seterr(divideignore, invalidignore)class Grid:# # 1. 函数1 read_tiff读取影像# def read_tiff(self…

element中Notification组件(this.$notify)自定义样式

1、自定义样式效果 2、vue代码 this.notifications this.$notify({title: ,dangerouslyUseHTMLString: true,duration: obj.remindMethod3 ? 0:4500,customClass: notify-warning,offset: 50,showClose: false,message: this.$createElement("div",null,[this.$…

五指山下500年

工作中的困难 在工作中,我曾经遇到一件事情让我有强烈的情绪波动。那是一次团队内部分配任务的时候,我遇到了一个非常棘手的问题。 我需要在几个团队成员之间分配任务,但是我不知道如何分配才能让每个人都满意。我知道,如果任务…

微服务-sentinel详解

文章目录 一、前言二、知识点主要构成1、sentinel基本概念1.1、资源1.2、规则 2、sentinel的基本功能2.1、流量控制2.2、熔断降级 3、控制台安装3.1、官网下载jar包3.2、启动控制台 4、项目集成 sentinel4.1、依赖配置4.2、配置文件中配置sentinel控制台地址信息4.3、配置流控4…

美国陆军网络司令部利用人工智能增强网络攻防和作战决策能力

源自: 奇安网情局 声明:公众号转载的文章及图片出于非商业性的教育和科研目的供大家参考和探讨,并不意味着支持其观点或证实其内容的真实性。版权归原作者所有,如转载稿涉及版权等问题,请立即联系我们删除。 “人工智能技术与咨询…

零侵入,零改造,模拟人的“统计数字员工”成就新时代智能普查

“您好,我们是余杭区经济普查员,这是第五次全国经济普查告知书。”近期,小编陆陆续续看到了许多普查人员的辛勤身影。 啥是第五次全国经济普查? 第五次全国经济普查是一项重大国情国力调查,主要目的是全面调查我国第…

护眼灯什么价位的好?有什么性价比的台灯吗

台灯是卧室和书房必备的家用电器之一,现在市场上销售的台灯种类琳琅满目,样式让人眼花缭乱,价格和质量又参差不齐,再加上口若悬河的销售人员为产品做广告的误导,如果事先没有做足功课,盲目地去挑选一台适合…

Kind创建本地环境安装Ingress

目录 1.K8s什么要使用Ingress 2.在本地K8s集群安装Nginx Ingress controller 2.1.使用Kind创建本地集群 2.1.1.创建kind配置文件 2.1.2.执行创建命令 2.2.找到和当前k8s版本匹配的Ingress版本 2.2.1.查看当前的K8s版本 2.2.2.在官网中找到对应的合适版本 2.3.按照版本安…

分库分表篇-2.4 springBoot 集成Mycat(1.6) 分库分表,读写分离,分布式事务

文章目录 前言一、分库分表:二、读写分离:2.1 读写分离的实现:2.2 主从延迟:2.2.1 主从延迟造成的问题:2.2.2 主从延迟的原因:2.2.3 主从延迟的解决方案:2.2.3.1 db 层面:2.2.3.2 程…

苹果手机QQ聊天记录怎么恢复?不容错过的3个好方法!

之前把很久不用的QQ给卸载了,但是现在突然想起来里面有很重要的聊天记录,友友们,有什么办法能够帮我找回聊天记录吗? 随着微信的崛起,现在很多人已经不怎么使用QQ了,因此很多小伙伴都把QQ卸载了。但是卸载后…

BST55电子式流量传感器

原理、 结构 基于热式原理, 在封闭的探头内包含两个电阻, 其中一个被加热作为探 测电阻, 另一个未被加热作为基准电阻, 当介质流动时, 加热电阻 上的 热量被带走, 电阻值被改变, 两个电阻差值被…

分库分表篇-2.2 Mycat-分片规则

文章目录 前言一、Mycat table的分片:二、常用分片规则:2.1 id 范围分片:2.2 id 取模分片:2.3 按照枚举值 分片:2.4 一致性hash hash 环:2.5 ER 分片:2.6 库内分表:2.7 全局表&#…

七天内连续登陆天数

一、需求描述 业务理解1:七天内最大连续登陆天数 业务理解2:七天内最近连续登陆天数(最近一天如果未登陆则连续登陆天数为0) 示例说明: 二、数据结构 流量表 tracking 字段名字段中文名userid用户iddt分区 口径描…

如果你觉得自己很失败,请观看此内容 视频学习

目录 什么是成功?​​​​​​​ How can we succeed in such an unfair world? 我们如何在这个不公平的地球上获得成功? 如何去找到自己的不公平优势呢? 最开始也有常有人跟她说你做视频是赚不到钱的 你做了,并不代表你做…

河道漂浮物检测:安防监控/视频智能分析/AI算法智能分析技术如何助力河道整治工作?

随着社会的发展和人们生活水平的进步,水污染问题也越来越严重,水资源监管和治理成为城市发展的一大困扰,水面上的漂浮垃圾不仅会影响河道生态安全并阻碍船舶航行,还会影响人们的身体健康。 TSINGSEEE青犀AI智能分析平台在环保场景…

当连锁零售超市遇上温湿度监控,简直是王炸!

在食品行业中,温湿度监控是确保食品质量和安全性的至关重要的环节之一。温度和湿度是影响食品保存期限、品质、口感以及微生物滋生的关键因素。通过有效的监测和管理,可以降低食品受损和变质的风险,保障消费者的健康和权益。 客户案例 福建某…

设计模式之建造者模式与原型模式

目录 建造者模式 简介 使用场景 优缺点 模式结构 实现 原型模式 简介 应用场景 优缺点 模式结构 实现 建造者模式 简介 将复杂对象的构建与表示进行分离,使得同样的构建过程可以创建不同的表示。是一个将复杂的对象分解为多个简单的对象,然…

Elasticsearch分布式搜索结果处理

1.排序 elasticsearch默认是根据相关度算分(_score)来排序,但是也支持自定义方式对搜索结果排序。可以排序字段类型有:keyword类型、数值类型、地理坐标类型、日期类型等。 1.1.普通字段排序 keyword、数值、日期类型排序的语法…

四季同行·雷锋家乡学雷锋“青柚课堂“讲师培训

为了给益阳市“青柚课堂”性教育志愿者讲师团队增加新鲜血液,8月27日,我机构在益阳市红十字救护培训基地开展了湖南省第二期"四季同行雷锋家乡学雷锋"孵化项目"青柚课堂"乡村女童性教育推广计划2023年师资培训。本次活动由我机构“蚂…

虹科方案 | 车辆零部件温度采集解决方案

虹科提供的车辆零部件温度监控与采集解决方案,通过热电偶模块来采集、监控、处理温度数据,可以通过CAN / CAN FD进行传输,确保车辆系统的正常运行和安全性。 文章目录 一、热电偶在汽车领域的应用什么是热电偶模块?热电偶模块如何…