前端面试总结(一)

前端面试题每日一学_13 1、谈一下Base64的原理及其优缺点。2、你使用过CSS预处理器吗?我们为什么要在项目中使用CSS预处理器?3、什么是边距折叠现象?解决方案有哪些? 阅读详情

1. Created和mounted等生命周期函数分别都适合做什么操作

不要在选项属性或回调上使用箭头函数,比如 created: () => console.log(this.a) 或 vm.$watch('a', newValue => this.myMethod())。因为箭头函数是和父级上下文绑定在一起的,this 不会是如你所预期的 Vue 实例

对象中定义箭头函数,this不会指向该对象,会指向window,或者undifine

函数中定义箭头函数,this会指向 该函数的所在的上下文,且不会随着apply或者call修改this指向

生命周期方法

beforeCreated:

created:完成vue实例的创建,判断时候有el,如果没有调用this.$mount(el)方法,将dom挂在到vm实例上

beforeMounted:判断是否有template,如果没有调用render 方法,创建createElement,创建vm.el

mounted:用刚创建的html 替换el

beforeUpdated: 组件更新前调用

updated: 组件更新后

actived: for keep-alive, 组件被激活时调用

deactived: for keep-alive, 组件消失时调用

beforeDestroyed:

destroyed:

beforecreated:el 和 data 并未初始化
created:完成了 data 数据的初始化,el没有
beforeMount:完成了 el 和 data 初始化
mounted :完成挂载

beforecreate : 举个栗子:可以在这加个loading事件
created :在这结束loading,还做一些初始化,实现函数自执行
mounted : 在这发起后端请求,拿回数据,配合路由钩子做一些事情
beforeDestroy: 你确认删除XX吗?

destroyed :当前组件已被删除,清空相关内容

2. 权限控制模块如何利用导航守卫实现


3. 网络请求模块封装,如何利用promise封装


4. 组件异步赋值:provide \ inject的使用


5. Keep-alive 有什么作用

<keep-alive>是Vue的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染DOM

<keep-alive> 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 <transition> 相似,<keep-alive> 是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。

一般都是配合路由使用

<keep-alive> <router-view></router-view>

</keep-alive>


6. Vuex :如何进行赋值操作

 

7. vue指令

v-bind

v-on

v-if

v-for

v-show

v-model

8. JS继承关系

我们需要牢记两点:①__proto__和constructor属性是对象所独有的;② prototype属性是函数所独有的,因为函数也是一种对象,所以函数也拥有__proto__和constructor属性。
__proto__属性的作用就是当访问一个对象的属性时,如果该对象内部不存在这个属性,那么就会去它的__proto__属性所指向的那个对象(父对象)里找,一直找,直到__proto__属性的终点null,然后返回undefined,通过__proto__属性将对象连接起来的这条链路即我们所谓的原型链。
prototype属性的作用就是让该函数所实例化的对象们都可以找到公用的属性和方法,即f1.__proto__ === Foo.prototype。
constructor属性的含义就是指向该对象的构造函数,所有函数(此时看成对象了)最终的构造函数都指向Function。

9. 计算属性与方法相比较的好处

计算属性依赖于data值,只有当data的值发生变化时,才会改变,而方法每次刷新调用取值

10. axios

实际返回一个promise,拦截器功能

 

笔试问题:

1. 请解释一下为什么要消除浮动、清除浮动的方式

浮动是由于子标签脱离文档流,造成父标签高度塌陷问题,浮动不会影响块级元素,但是会影响行内元素

清除浮动:(BFC模式)

1. 父标签添加overflow:hidden

2.  父标签添加display:inline-block

3. 伪类

.clearfix:after{

    display: block;
    content:'';
    clear:both;
    height: 0;
}

2. 利用javaScript获取URL中的参数值

1. 正则表达式2. splite(‘?’)和 substr字符串截取

4. javaScript实现一个千分位的分隔符

字符串方法总结:

indexOf(’‘)//判断字符串是否包含某个值,如果不包含返回-1

join(),数组转字符串

slice(), 字符串截取,可以从后面开始截取 slice(-2,-1)

substring(),字符串截取,接受开头、结尾两个参数,小的作为起始位置

数组方案

splite(''), 字符串转数组

splice(),删除或者添加字符串 [].splite(1,1,'2'), 在下标为1的位置开始 删除1个元素,添加“2”到这个位置

push(),结尾添加元素,pop()结尾删除元素,shift()开头删除元素,unshift()开头添加元素,reverse() 数组倒叙

5. 为什么浏览器会有跨域问题,怎么解决

1.Jsonp ,必须是get请求

 // 1:script标签的创建及加载
        var script = document.createElement('script');
        // 2:服务器返回的数据 需要在函数中被执行
        // 3:挂载一个全局函数,先来个函数名
        var callbackName = 'callback'; // callback
        // 挂在window上
        window[callbackName] = function (data) {
            document.getElementById("main").interHTML = data;
        }
        // 4:吧这个函数名传递给服务器
        script.src = 'http://localhost:8889/jsonp?callback=' + callbackName;
        // 5:将标签插入到body中
        document.body.appendChild(script);
 

2. Nginx代理

3. 服务端在header头设置across-control-origin

6. webpack用来解决什么问题

1.自动构建HTML,可压缩空格,可给引用的js加版本号或随机数:html-webpack-plugin
2.处理CSS:css-loader与style-loader
3.处理LESS:less-loade与less
4.提取css代码到css文件中: extract-text-webpack-plugin
5.开发环境下的服务器搭建:webpack-dev-server
6.解析ES6代码:babel-core babel-preset-env babel-loader
7.解析ES6新增的对象函数:babel-polyfill
8.解析react的jsx语法:babel-preset-react
9.转换相对路径到绝度路径:nodejs的path模块
10.给文件加上hash值:[chunkhash],[hash]
11.清空输出文件夹之前的输出文件:clean-webpack-plugin
12.模块热替换:NamedModulesPlugin和HotModuleReplacementPlugin
13.环境变量
14.跨平台使用环境变量: cross-env
15.处理图片路径: file-loader和html-loader
16.图片压缩:image-webpack-loader
17.定位源文件代码:source-map
18.分离生产环境和开发环境的配置文件

7. 爬虫引擎如何抓取界面,如何防止采集

前端面试题每日一学_11 1、谈谈对BFC的理解?如何创建BFC?2、清除浮动的常用方法有哪些,各⾃的优缺点是什么?3、讲一下CSS盒模型的区别 阅读详情

相关推荐

【KO】前端面试一

遍历自身及原型// 遍历到自身或原型链属性,只要有可枚举属性就非空注意for...in遍历可枚举属性,若要包含不可枚举,结合(获取自身所有属性名,包含不可枚举 )和(遍历原型链 )递归检查。

abbiz的博客 816

Vue学习之--------Vue生命周期beforeCreate、created、beforeMount、mounted、beforeDestroy 。。。(图解详细过程)(2022/7/17)

Vue学习之--------Vue生命周期beforeCreate、created、beforeMount、mounted、beforeDestroy 。。。(图解详细过程)

日常笔记 | 干货分享 | 毕设源码 | 毕设指导 | 答辩指导 3593

聊一聊前端算法面试——递归

写在前面 今天来聊一聊前端面试中出现频率非常高的一种算法思想——「递归」。 先看下几个常见的面试题: 假如楼梯有n个台阶,每次可以走1个或2个台阶,请问走完这n个台阶有几种走法❓ 如何用递归思想实现深拷贝❓ 如何用递归思想实现数组的扁平化❓ 你可以先思考一下如何回答上边的问题,然后带着答案来阅览接下来的内容。 如何编写递归代码❓ 递归思想在前端面试中非常常见,除了上面的一些题目之外,二叉树的前中后...

weixin_45566319的博客 1791

前端面试instanceof_腾讯前端面试篇(一)

作者:WaterMan原文链接:https://juejin.im/post/5c19c1b6e51d451d1e06c163又到年尾了,各位小伙伴的心可能又蠢蠢欲动了。。。得不到的永远在骚动,被偏爱的都有恃无恐。。。作为一个前端菜鸟的我,面试经验和工作经验并不丰富,但大大小小也面试过不少互联网圣地,今天就讲讲笔者今年初面试鹅厂的经验,希望对大家有所帮助!后面的答案为自行整理,如有疏漏,...

weixin_29790897的博客 356

前端面试整理一

前端基础 2.1)对称加密也有缺陷,如何克服? 对称加密虽然简单性能也好,但是首次把密钥发送给对方时,很容易被拦截。 这里介绍非对称加密: 解决方案:结合两种加密方式,将对称加密的密钥,使用非对称加密的公钥进行加密,然后接收方只能用私钥解,最后双方可以使用对称加密来进行沟通。 但是还有缺陷,如果存在一个中间人把通信的公钥换成他自己的公钥,这样就可完全拿到通信的数据。这样需要一个安全的第三...

QiuShuiFuPing的博客 844

iOS安全攻防:从DarkSword漏洞利用链剖析到纵深防御实践

在移动安全领域,内存破坏漏洞(如堆溢出、释放后使用)是攻击者突破系统防线、实现远程代码执行和权限提升的核心技术原理。这些漏洞利用技术通过精心构造的攻击链,能够绕过沙箱、地址空间布局随机化等安全机制,最终威胁设备内核安全,其技术价值在于揭示了系统安全架构的潜在薄弱环节。在iOS应用开发与系统防护中,理解此类攻击链对于构建有效的纵深防御体系至关重要。应用场景涵盖从安全编码、网络通信加固到运行时应用程序自保护等多个层面。本文以DarkSword工具包为例,深入拆解其利用链,并分享如何通过内存安全实践、代码签名强化

weixin_30357231的博客 479

腾讯前端面试篇(一)

又到年尾了,各位小伙伴的心可能又蠢蠢欲动了。。。 得不到的永远在骚动,被偏爱的都有恃无恐。。。 作为一个前端菜鸟的我,面试经验和工作经验并不丰富,但大大小小也面试过不少互联网圣地,今天就讲讲笔者今年初面试鹅厂的经验,希望对大家有所帮助!后面的答案为自行整理,如有疏漏,欢迎指正! 第二篇地址 先说整体情况 适用范围: 一到两年的菜鸟前端开发工程师 笔者情况: 笔者一共面试了好几轮技术面,最终结果技术...

weixin_44206039的博客 528

SRC漏洞挖掘实战:从攻击面管理到业务逻辑漏洞的精准狩猎

在网络安全领域,漏洞挖掘是识别和利用软件系统中安全弱点的核心实践。其基本原理在于通过系统化的方法,识别和评估一个应用或系统的攻击面,并从中定位安全防护的薄弱环节。这项技术的价值在于能够主动发现潜在风险,防患于未然,对于保障企业数字资产安全至关重要。典型的应用场景包括对Web应用、移动端API以及各类在线业务系统的安全性评估。在实际的漏洞挖掘,尤其是针对安全应急响应中心(SRC)的实战中,高效的策略往往聚焦于**边缘资产**的发现与利用,以及对**业务逻辑漏洞**的模式化测试。掌握这些经过验证的思路,能帮助安

babing2770的博客 413

前端面试一

前端面试题 第一阶段 HTML、CSS、HTML5、CSS3 1、XHTML、HTML、XML的异同 XHTML-Extensible Hypertext Markup Language:可扩展超文本标记语言,以 XML 应用的方式定义的 HTML,更严格更纯净的 HTML 版本 HTML-Hypertext Markup Language:超文本标记语言,用来显示数据,即用标记标签来描述...

感恩、奋进、自信 2566

从梯度泄露到数据复原:DLG与iDLG算法实战解析

本文深入解析了DLG与iDLG算法在梯度泄露与数据复原中的实战应用,揭示了联邦学习中的隐私风险。通过详细代码示例和实验数据,展示了如何从梯度中复原原始训练数据,并探讨了梯度压缩、差分隐私等防御措施。文章特别强调了iDLG算法在标签破解中的高效性,为AI安全领域提供了重要参考。

weixin_30552811的博客 191

OpenMythos深度解析

本文深入解析了kyegomez/OpenMythos项目如何从第一性原理重建Claude Mythos的核心架构。该项目并非直接复制Claude,而是基于公开论文和实验结果推测其可能的设计理念,构建了包含多模态注意力、深度推理引擎、知识检索模块等六大核心组件的模块化架构。重点剖析了分组查询注意力(GQA)的实现细节,展示了KV头扩展等关键技术。该项目已成为大模型开源社区最受关注的研究之一,为理解Claude的架构思想提供了有价值的参考。

Crown_22的博客 518

web前端面试之基础面试题(一)(含答案)

前端面试题(一) 今天我们整理一下前端面试题(15个) 1.HTML中行内元素与块元素的区别?并举例?行内元素怎么转化为块级元素? 块级元素(block element)在浏览器中占据整行,并排斥其它元素与其位于同一行。也就是说,块级元素的宽度是 100%。常见的块级元素如下表: 块级元素 说明 div 最典型的块元素 p 表示段落 h1-h6 表示1-6级标题(默认加粗) br 表示换行 ol 有序列表 ul 无序列表 ** > 行内元素又称内联元素(in

weixin_45819386的博客 5102

使用Qt编译Qt WebEngine

这就是使用Qt编译Qt WebEngine模块的基本步骤。通过按照上述步骤,您应该能够成功编译和使用Qt WebEngine来嵌入Web内容到您的Qt应用程序中。Qt WebEngine是Qt框架的一个模块,它提供了一个现代的Web浏览器引擎,可以在Qt应用程序中嵌入Web内容。首先,需要获取Qt的源代码。如果尚未安装,可以从Qt官方网站下载并安装Qt。完成Qt的安装后,您可以构建并运行Qt WebEngine示例来验证编译是否成功。这将把编译好的Qt库文件和头文件安装到之前指定的安装目录中。

DevForge的博客 3016

「2024」前端高频面试题之JS篇(一)

前端高频面试题之JS篇,概述:JS8种数据类型及两种数据类型的区别,数据类型的检测方式,JS为什么要进行变量提升,闭包

m0_37489258的博客 1659

深入Netflix影片分类数据抓取的Python爬虫实战:反反爬机制绕过与Playwright应用全解析

技术工具用途Playwright控制真实浏览器模拟用户行为开发语言asyncio异步调度浏览器任务pandas数据处理和导出sqlite3本地数据库存储支持随机UA模拟,增强反爬能力为什么选择 Playwright?✅ 支持多浏览器(Chromium、Firefox、WebKit)✅ 原生支持 Python 异步编程✅ 提供截图、滚动模拟、验证码处理等高级功能✅ 反爬能力强,模拟真实用户访问。

2201_76125261的博客 1239

PHP与Node.js的对比及优缺点分析

PHP和Node.js是两种常用的服务器端编程语言,它们在不同的应用场景下各有优势和劣势。本文将全方位比较PHP和Node.js的特点,以及它们在编程中的优缺点,并提供相应的源代码示例供参考。需要注意的是,本文只是对PHP和Node.js的一些优缺点进行了简要介绍,实际应用中还需要考虑其他因素,如团队经验、项目规模和预算等。最终的选择应该基于全面的评估和需求分析。PHP:PHP是一种同步阻塞的编程语言,它的处理方式是一次只处理一个请求。Node.js:Node.js的性能较高,特别适合处理高并发的请求。

ByteSparkX的博客 887

前端面试题一

前端面试题一

2201_75328243的博客 786

手把手教你学PCIE--PCIe架构详解 - 物理层结构

在前一篇文章中,我们对PCIe与其他总线协议进行了对比分析。本文将深入探讨PCIe的物理层结构,这是PCIe协议的核心组成部分之一。物理层负责实际的电气信号传输,理解其工作原理对于设计和调试PCIe系统至关重要。PCIe的物理层是协议栈的最底层,负责将数据从链路层转换为电信号进行传输,并在接收端将电信号还原为数据。差分信号传输:通过一对差分信号线实现高速、低噪声的数据传输。时钟恢复:从数据流中提取时钟信号以同步收发双方。均衡与预加重:补偿信号在传输过程中的损耗,提高链路可靠性。

MHD0815的博客 362

前端面试准备(一)

(1)介绍项目背景这个项目为什么做,当初大的环境背景是什么?还是为了解决一个什么问题而设立的项目?背景是很重要的,如果不了解背景,一上来就听一个结论性的项目,面试官可能对于项目的技术选型、技术难度会有理解偏差,甚至怀疑是否真的有过这样的项目。比如一上来就说:我们的项目采用了「backbone」来做框架,然后。。。而「backbone」已经是三四年前比较新鲜的技术,现在会有更好的选择方案,如果不介绍项目的时间背景,面试官肯定一脸懵逼。(2) 承担角色项目涉及的人员角色有哪些,自己在其中扮演的角色是什么?...

qq_44004420的博客 804

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

前端面试记录(一)

记录前端面试经历

weixin_43526403的博客 690

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

前端面试一 CSS

前端面试一 CSS 1、盒模型 盒模型有两种一种是W3C的标准盒模型,一种是IE的怪异盒模型。 标准盒模型 标准盒模型的width和height指的是内容区域也就是content区域的宽度和高度。 标准盒模型的大小 = content + border + padding + margin 怪异盒模型 怪异盒模型的width和height指的是内容,边框,内边距这三个的总和。也就是(content+border+padding) 怪异盒模型的大小 = width(content+border+padding

weixin_45892086的博客 160

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

前端面试总结(一)

时间:2017年11月16日 地点:深圳市福田区泰然九路1号天地源盛唐大厦 公司:GalaxyImmigration有限公司 经过 和面试官约了上午十点开始面试,提前半个小时到达公司办公地点,在前台那里登记姓名,接着填了一张双面的表格,用了近半个小时。里面有两个问题印象挺深刻的,因为不知道怎么去描述,问题是这样的: 1、在工作上做的最成功的一件事是什么? 2、在工作上...

144

前端框架及项目面试一

前端框架及项目面试聚焦Vue Reacet Webpack 为什么要做面试题 面试前的准备太复杂 日积月累,总结思路 我们可否自己复习?答案是可以的,但是需要有足够的时间,有自学能力,需要有足够毅力。 如果跟着课程呢? 主要分为两点: 1.全面 全面的知识体系 大量的面试真题 完整的技术面试流程 2.高效 直击面试考点和重点,无需自己去扒那些详细的文档 会深入浅出讲解原理,无需自己去阅读那些源码,原理是不等于源码的 会解读项目的设计的思路,提炼项目的经验 注意 课程不能保证100%通过面试 课程不能

weixin_53944118的博客 658

前端面试总结一

1.页面的重构和回流 重构: 改变每个元素的外观时所触发的浏览器的行为,如颜色、背景等样式发生改变而进行的重新构造新外观的行为。重构不会引发页面的重新布局,不一定伴随着回流。 重构时需要注意: 页面的健壮性:在页面排版时需要考虑数据极多或者极少的情况。 页面的扩展性:要考虑未来添加子模块或兄弟模块的状态,为将来留好css、html扩展的出入口。在将来添加模块的时候,尽可能少的去动原来的html结构...

我是谁的博客 1136

前端面试题集合一

前端面试题集合一

前端金牌摸鱼达人 28万+
上一篇: 前端面试总结(二)
下一篇: 前端面试总结(三)
小桃酥
博客等级 码龄10年 23粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值