小记面试题-2021

LinMeng
• 阅读 1592

CSS类

1.解释浮动及其工作原理

浮动的元素可以向左或者向右移动,直到它的外边缘碰到包含元素(父元素)或另一个浮动元素的边框为止。要想使元素浮动,必须为元素设置一个宽度。虽然浮动的元素已不在文档流中, 但是它浮动后所处的位置依然在浮动之前的水平方向上。因为浮动元素不在文档流中,所以文档流中的块元素表现的就像浮动元素不存在一样,下面的元素会填补原来的位置。有些元素会在浮动元素的下方,但是这些内容的元素不一定会被浮动元素遮盖,当定位内联元素时,要考虑浮动元素的边界,围绕浮动元素放置内联元素。也可以把浮动元素想象成被块元素忽略的元素,而内联元素会关注的元素。

2.position:absolute和float属性的异同

共同点是对内联元素设置float和absolute属性,可以让元素脱离文档流,并且可以设置其宽高。 不同点是float仍可占据位置,不会覆盖在另一个BFC区域上,浮动的框可以向左或向右移动,直到其外边缘碰到包含框或另一个浮动框的边框为止。absolute覆盖文档流中的其他元素,即遮盖现象。。

3.说说你知道的css3新特性。

圆角(birder-radius),阴影(box-shadow)、对文字加特效(text-shadow),线性渐变(gradient),变换(transform)等等。

4.rgba()和opacity的透明效果有什么不同?

rbga()和opacity都能实现透明效果,但是最大的不同在于opacity是作用于元素,并且可以设置元素内所有内容的透明度;而rgba()只作用于元素的颜色或其背景色---设置rgba透明的元素的子元素不会继承透明的效果。

JavaScript

1.说说你对闭包的理解。

使用闭包只要是为了设计私有变量和方法。闭包的优点是可以避免全局变量的污染;缺点是闭包会常驻内存中,增加内存使用量,使用不当很容易造成内存泄漏,在JavaScript中,函数即闭包,只有函数才会产生作用域。 闭包有3个特性:

  1. 函数嵌套函数
  2. 在函数内部可以引用函数外部的参数和变量
  3. 函数和变量不会以垃圾回收机制回收

    2.简单说说new操作符的作用。

    作用如下:
  4. 创建一个空对象
  5. 由this变量引用该对象
  6. 该对象继承该函数的原型(更改原型链的指向)
  7. 把属性和方法加入到this引用的对象中。
  8. 新创建的对象由this引用,最后隐式地返回this,过程可以了解一下:
    var obj={};
    obj.__proto__ =Base.prototype;
    Base.call(obj);

    3. 说说你知道的那些操作会造成内存泄露。

    内存泄露指不再拥有或需要任何对象(数据)之后,他们仍然存在于内存中。 提示:垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为0,或该对象的唯一引用是循环,那么该对象占用的内存立即被回收。 如果setTimeout的第一个参数使用字符串而非函数,会引发内存泄漏。 闭包,控制台日志,循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)等会造成内存泄露。

Vue

1.vue-router是什么?它有哪些参数?

导航钩子又称导航守卫,又分为全局钩子,单独酷游独享钩子和组件级钩子。 全局钩子有beforeEach,beforeResolve,afterEach 单个路由独享钩子有beforeEnter 组件级钩子有beforeRouterEnter,beforeRouterUpdate,beforeRouterLeave.它们有以下参数:

  1. to 即将要进入的路由目标对象
  2. from 当前导航正要离开的路由
  3. next 一定要用这个函数才能到达下一个路由,若不用就会遭到拦截。

2. 你是怎么认识vuex的?

vuex可以理解为是一种开发模式或框架,它是对Vue.js框架数据层面的扩展,通过状态(数据源)集中管理驱动组件的变化,应用的状态集中放在store中,改变状态的方式是提交mutations,这是个同步的事务,异步逻辑封装在action中。

3.描述Vue.js的特点。

  1. 简洁--页面由HTML模板+JSON数据+Vue.js实例化对象组成。
  2. 数据驱动--自动计算属性和追踪依赖的模板表达式
  3. 组件化--用可复用,解耦的组件来构造页面
  4. 轻量--代码量小,不依赖其他库
  5. 快速--精确而有效地批量实现DOM更新
  6. 易获取--精确而有效地批量实现DOM更新

其他

1.XSS 攻击是什么?如何防护?

:xss( Cros Site Seripting)攻击指码是攻击者向 Web 页面里插入恶意 HTML标签或者 JavaScript代码,比如,攻击者在论坛中放一个看似安全的链接,骗取用户单击并窃取 cookie 中的用户私密信息;或者攻击者在论坛中加一个恶意表单,当用户提交表单的时候,却把信息传送到攻击者的服务器中,而不是用户原本以为的信任站点。 要防范 XSS攻击,首先,在代码里对用户输入的地方和变量都需要仔细检查长度和对“<”“>”";"","等字符做过滤。其次,在把任何内容写到页面之前都必须进行编码,避免泄露 htmltag。在这一个层面做好,至少可以防止超过一半的 XSS 攻击。

2.说说 Git 中 merge 和 rebase 的区别。

在Git中,merge 和rebase 从最终效果来看没有任何区别,都是将不同分支的码融合在一起,但是生成的代码树稍有不同。rebase 操作不会生成新的节点,而是两个分支融合成一个线性的提交。而merge 操作生成的代码树会显得比较乱。

点赞
收藏
评论区
推荐文章
Java Record 的一些思考 - 默认方法使用以及基于预编译生成相关字节码的底层实现
快速上手Record类我们先举一个简单例子,声明一个用户Record。publicrecordUser(longid,Stringname,intage)这样编写代码之后,Record类默认包含的元素和方法实现包括:1.record头指定的组成元素(intid,Stringname,intage),并且,这些元素都是f
Wesley13 Wesley13
1年前
CSS
在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了,下面总结8种清除浮动的方法,测试已通过iechromefirefoxopera,需要的朋友可以参考下清除浮动是每一个web前台设计师必须掌握的机能。css清除浮动大全,共8种方法。 浮动会使当前标签产生向上浮的效果,同时会影响到前后标签、父级标签的位置及widthhei
Wesley13 Wesley13
1年前
CSS内容布局
网页是由不同内容块构成的:标题、段落、链接、列表、图片、视频,等等。1.定位定位并不适合总体布局,因为它会把元素拉出页面的正常流。元素的初始定位方式为静态定位(static),即块级元素垂直堆叠。把元素设置为相对定位(relative),然后可以相对于其原始位置控制该元素的偏移量,同时又不影响其周围的元
Wesley13 Wesley13
1年前
BFC清除浮动
BFC就是清除浮动用来处理文档脱离文档流的问题清除浮动的方法:a、父元素也添加一个浮动    产生弊端就是:margin不能使用b、给父元素添加一个:display:inlineblock     弊端同a一样:无法使用marginc、给父元素添加高     
Wesley13 Wesley13
1年前
CSS 清除浮动的4种方法
1\.为什么要清除浮动因为父级盒子很多情况下,不方便给高度,但是子盒子浮动就不占有位置,最后父级盒子高度为0,就影响了下面的标准流盒子。!在这里插入图片描述(https://imgblog.csdnimg.cn/20201111221816518.pngpic_center)
Wesley13 Wesley13
1年前
CSS中清除浮动的作用以及如何清除浮动
1.什么是浮动,浮动的作用“浮动”从字面上来理解就是“悬浮移动、非固定”的意思。块级元素(div、table、span…)是以垂直方向排列,而在前端界面中往往要使用水平布局块级元素使界面更美观。这就要用到浮动了。被设置浮动的元素会脱离标准流(竖直排列),从而达到水平排列的效果。例如.未设置浮动时图1中的两张图片竖直排列在父级元素(橙色区域)
Stella981 Stella981
1年前
CSS之清除浮动 && float属性
DIV层内的元素在使用了float属性后无法自动改变高度的解决办法:有的时候为了让外侧层根据内容自动调整,没有设置高度或宽度,一般都会正常显示。但如果层内元素使用了float属性,就会使那些元素脱离文件流,就无法再扩充容器层,就会导致外层大小无法根据内容自动调整。关于这个问题,总结出以几种在当下几种主流浏览器都兼容的方法,供大家参考。1.清除浮动在层
Wesley13 Wesley13
1年前
CSS 清除浮动 伪类
参考链接:https://www.cnblogs.com/yingsu/p/7261904.html不清楚浮动的结果和影响不再描述,清除浮动的代码别处也有很多,每种方法都有十分简洁的代码,我今天学到的是有伪类来清除浮动。他的原理简单来说就是再已经浮动的元素后面添加一个什么也没有的元素,以此来消除子元素因为浮动而让父元素塌陷的一种解决办法。
Wesley13 Wesley13
1年前
CSS复习笔记二:浮动和清除浮动
 一、浮动的性质1、浮动的元素脱离标准文档流,并且可以设置宽度和高度。2、浮动的元素相互贴靠3、浮动的元素有“文字环绕”效果       含有图片的div浮动,段落不浮动,文字会环绕图片。4、div浮动了且没有设置宽度,那么将自动收缩为内容的宽度。浮动(脱标)的元素是不能把容器惩处高度的。二、浮动的清除
helloworld_28799839 helloworld_28799839
4个月前
常用知识整理
Javascript判断对象是否为空jsObject.keys(myObject).length0经常使用的三元运算我们经常遇到处理表格列状态字段如status的时候可以用到vue