前端面试
前端-rabbit
保持热爱 慢慢来 ...
展开
-
经典面试题| react/vue中的key有什么作用?(key的内部原理是什么? 为什么遍历列表时,key最好不要用index?
经典面试题:1. 虚拟DOM中key的作用:(1)简单的说: key是虚拟DOM对象的标识, 在更新显示时key起着极其重要的作用。(2)详细的说: 当状态中的数据发生变化时,react会根据【新数据】生成【新的虚拟DOM】, 随后React进行【新虚拟DOM】与【旧虚拟DOM】的diff比较,比较规则如下: a. 旧虚拟DOM中找到了与新虚拟DOM相同的key: (1).若虚拟DOM中内容没变, 直接使用之前的真实DOM (2).若虚拟DOM中原创 2022-06-20 10:05:16 · 205 阅读 · 0 评论 -
牛客-js练习|错题本-this指向(03)
this指向:作为对象的属性、作为普通函数调用、作为构造器调用、call和apply调用、箭头函数原创 2022-06-07 14:06:57 · 137 阅读 · 0 评论 -
ES6面试问题汇总
ES6有哪些新增方法?/你了解哪些ES6方法?(总问题)块级作用域、模板字符串、解构赋值、箭头函数、函数默认参数、剩余参数&运算符、set和map、import和exprot用法、promiseasyn和awit函数原创 2022-04-24 19:03:50 · 6570 阅读 · 2 评论 -
什么是:arguments
1.arguments是一个类数组对象,它也可以通过索引来操作数据,也可以获取长度2.我们即使不定义形参,也可以通过arguments来使用实参,3.它里边有一个属性叫做callee原创 2022-04-12 14:53:23 · 2238 阅读 · 0 评论 -
call( )和apply( )的相同点和区别
call( )和apply()相同点----这两个方法都是函数对象的方法,需要通过函数对象来调用----当对函数调用call( )和apply( )都会调用函数执行----在调用call( )和app1y( )可以将一个对象指定为第一个参数 此时这个对象将会成为函数执行时的this区别---- call( )方法可以将实参在对象之后依次传递---- apply( )方法需要将实参封装到-一个数组中统一传递相同点注:fun 是 函数...原创 2022-04-12 12:01:09 · 341 阅读 · 0 评论 -
React路由和react-router-dom相关API
5.1. 相关理解5.1.1. SPA的理解1.单页Web应用(single page web application,SPA)。2.整个应用只有一个完整的页面。3.点击页面中的链接不会刷新页面,只会做页面的局部更新。4.数据都需要通过ajax请求获取, 并在前端异步展现。5.1.2. 路由的理解1.什么是路由?1.一个路由就是一个映射关系(key:value)2.key为路径, value可能是function或component原创 2022-04-12 11:11:25 · 411 阅读 · 0 评论 -
构造函数作用及使用
构造函数的作用:构造函数的最大作用就是创建对象时完成初始化,当我们在new一个对象并传入参数的时候,会自动调用构造函数并完成参数的初始化。原创 2022-04-08 15:34:37 · 5614 阅读 · 0 评论 -
splice( )的用法
splice( )的用法有三种,删除功能,替换功能,插入功能原创 2022-04-01 15:36:55 · 8138 阅读 · 1 评论 -
React旧生命周期---主要知识点
React旧生命周期话不多说,先上图画蓝色对号的是在react新生命周期中将要摒弃的;componentWillMount() componentWillReceiveProps() componentWillUpdate()画红色框的是react生命周期中常用到的周期,也是以后工作后会常用到的生命周期;...原创 2022-03-31 11:56:58 · 792 阅读 · 0 评论 -
React中组件样式隔~index.module.css(详细版)
react中样式隔离使用.module.css (超详细)原创 2022-03-29 22:11:56 · 4166 阅读 · 1 评论 -
一篇读懂什么是MVVM?MVVM优缺点?
什么是MVVM?MVVM优缺点?原创 2022-03-22 09:18:15 · 17419 阅读 · 0 评论 -
Vue父子组件传值
Vue父子组件传值1.props 父组件向子组件传递数据。2.$emit 自定义事件子组件调用父组件方。原创 2022-03-19 12:08:16 · 813 阅读 · 0 评论 -
display:none和visibility:hidden区别?
display:none和visibility:hidden区别1.占位 2.重绘和渲染原创 2022-03-19 11:06:59 · 394 阅读 · 0 评论 -
substring( )的两种用法?
substring( )的两种用法?原创 2022-03-13 21:19:31 · 8324 阅读 · 0 评论 -
String和toString区别?
JavaScript中String()和.toString()都可以将数据转化为字符串类型,但是String()与.toString()还是存在一些区别1.String可以将所有的数据都转化为字符串,但是.toString()不能对null和undefined进行转换例题一:使用String()和.toString()对false进行转换<script> var str1 = false.toString(); var str2 = String(flase); c原创 2022-03-12 22:27:58 · 2146 阅读 · 0 评论 -
函数的调用方式不同时,this的指向什么
1.通过函数名()直接调用的:this指向window2.通过对象.函数名()调用的:this指向这个对象;3.函数作为数组的一个元素,通过数组下标调用的:this指向这个数组4.函数作为构造函数,用new关键字调用时:this指向的是new出的新对象5.通过函数指定,用apply()、call()、bind()方法指定this...原创 2022-03-03 22:32:37 · 255 阅读 · 0 评论 -
js中 { } [ ] ()的具体区
1.{ }大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数体2.[]中括号,表示一个数组,也可以理解为一个数组对象3.{}和[]一起使用,可以组成一个对象数组4.( )多表示参数...原创 2022-03-03 22:30:55 · 1214 阅读 · 0 评论 -
Promise的缺点?
1). 无法取消Promise,一旦创建他就会立即执行,无法中途取消2). 如果不设置回调函数,Promise内部抛出的错误,不会反应到外部3). 当处于Pending状态时,无法得知目前进展到哪一个阶段(刚刚开始还是即将结束)...原创 2022-02-25 22:06:17 · 378 阅读 · 0 评论 -
闭包的好处和坏处?
闭包的好处1.缓存2.面向对象中的对象3.实现封装,防止变量跑到外层作用域中,发生命名冲突4.匿名自执行函数,匿名自执行函数可以减小内存消耗闭包的坏处1.内存消耗函数的活动对象会随着执行期上下文一起销毁,但是,由于闭包引用另外一个函数的活动对象,因此这个活动对象无法被销毁,这意味着,闭包比一般的函数需要更多的内存消耗。2.性能问题使用闭包时,会涉及到跨作用域访问,每次访问都会导致性能损失。...原创 2022-02-21 10:04:43 · 1165 阅读 · 0 评论 -
什么是盒子模型?
前端面试 css html原创 2022-02-21 09:57:53 · 505 阅读 · 0 评论 -
异常捕获语句执行的过程为?
代码正常运行,如果在try中出现了错误,try里面出现错误的语句后面的代码都不再执行,直接跳转到catch中=>catch中处理错误信息=>然后继续执行后面的代码如果try中没有出现错误,那么不走catch直接执行后面的代码通过try-catch语句进行异常捕获之后,代码将会继续执行,而不会中断。...原创 2022-02-19 21:46:04 · 344 阅读 · 0 评论 -
offsetleft和styleleft区别?
offsetleft和styleleft区别?(1)最大区别在于offsetLeft可以返回没有定位盒子的距离左侧的位置。如果父系盒子中都没有定位,以body为准。(2)offsetTop返回的是数字,而style.top返回的是字符串,除了数字外还带有单位:px。(3)offsetTop只读,而style.top可读写。(只读是获取值,可写是赋值)(4)如果没有给HTML元素指定过top样式,则style.top返回的是空字符串。style.left只能获取行内式,如果没...原创 2022-02-19 21:42:49 · 410 阅读 · 0 评论 -
AJAX 的优点及缺点?
AJAX的优点1)可以无需刷新页面而与服务器端进行通信。2)允许你根据用户事件来更新部分页面内容。AJAX的缺点1)没有浏览历史,不能回退2)存在跨域问题(同源)3)SEO不友好原创 2022-02-19 21:21:59 · 284 阅读 · 0 评论 -
每天三道前端面试题03
1.Vue 生命周期总共分为几个阶段?(必会)2.列举三种强制类型转换3.toString()与String()的区别-----------------1.Vue 生命周期总共分为几个阶段?生命周期分为三大阶段:初始化显示、更新显示、销毁Vue实例初始化阶段的钩子函数:beforeCreate() 实例创建前:数据和模板均未获取到 created() 实例创建后: 最早可访问到 data 数据,但模板未获取到 beforeMount() 数据挂载前:模板已获取到,但是数据未挂原创 2022-01-18 18:10:32 · 90 阅读 · 0 评论 -
每天三道前端面试题01
1.sessionStorage和localStorage的区别?2.mouseEnter和mouseover的区别?3.如何解决盒子外边距塌陷问题?----------------------1.sessionStorage 和 localStorage 的区别?sessionStorage:存储周期关闭浏览器后失效,在同一窗口可以共享数据;localStorage:存储周期永久(除非被清除,否则永久保存),在多个窗口下可以共享。2.mouseEnter 和 mouse...原创 2022-01-14 20:58:58 · 101 阅读 · 0 评论 -
每天三道前端面试题02
1.什么是闭包,闭包要解决什么问题?2.Jq命名中允许出现的字符有哪些?2.如何把DOM对象转换成JQ对象、如何把JQ对象转换成DOM对象?----------------1.什么是闭包,闭包要解决什么问题?闭包是一个对外不公开的空间,闭包内的数据不允许外界访问,要解决的问题就是间接访问闭包内的数据。2.Jq命名中允许出现的字符有哪些?数字、字母、下划线、$2.如何把DOM对象转换成JQ对象、如何把JQ对象转换成DOM对象?DOM对象转换成JQ对象:$()// 获取原创 2022-01-16 23:38:14 · 235 阅读 · 0 评论