前端面试(2)

1.js中的闭包指什么?
闭包就是能够读取其他函数内部变量的函数
闭包的用途1.可以读取函数内部的变量 2.让这些变量的值始终保持在内存中
2.v-if和v-show的区别是什么?分别的使用场景?
v-if和v-show都是用来控制元素的渲染。v-if判断是否加载,可以减轻服务器的压力,在需要时加载,但有更高的切换开销;v-show调整DOM元素的CSS的dispaly属性,可以使客户端操作更加流畅,但有更高的初始渲染开销。如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件很少改变,则使用 v-if 较好
3.v-for中 key值的作用?
key 的特殊属性主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes。如果不使用 key,Vue 会使用一种最大限度减少动态元素并且尽可能的尝试修复/再利用相同类型元素的算法。使用 key,它会基于 key 的变化重新排列元素顺序,并且会移除 key 不存在的元素
有相同父元素的子元素必须有独特的 key。重复的 key 会造成渲染错误
4.vue中插槽的作用?
插槽,也就是slot,是组件的一块HTML模板,这块模板显示不显示、以及怎样显示由父组件来决定
5.js的执行机制
在这里插入图片描述
1.js代码分为同步任务和异步任务
2.同步任务会进入主线程,异步任务会进入Event Table(事件表),当事件表中的异步任务完成后会在Event Queue(事件队列)中注册回调函数。
3.主线程任务全部完成后,才会完成Event Queue中的任务。
4.js解析器会不断地重复检查主线程执行栈是否为空,然后重复第3步,这就是Event Loop(事件循环)
6.Jquery中绑定事件用的on和bind有什么区别?
on绑定父级会冒泡,bind绑定自己不会冒泡
7.前端常用的性能优化有哪些?
在这里插入图片描述
8.打开页面,速度比较慢,该怎么做
前端页面的性能测试可以使用httpwatch 或者chrome 自带的工具 network,可以看到页面加载的过程中比较慢的步骤。一般分析页面加载慢的原因会从页面加载的图片、CSS、JS、或者与后端的交互来分析
在这里插入图片描述9.箭头函数和一般函数有什么区别?
1.箭头函数的定义要比一般函数定义简洁、清晰得多,很快捷
2.箭头函数不会创建自己的this
3.箭头函数继承而来的this指向永远不变
4…call()/.apply()/.bind()无法改变箭头函数中this的指向
5.箭头函数不能作为构造函数使用
6.箭头函数没有自己的arguments
7.箭头函数没有原型prototype
8.箭头函数不能用作Generator函数,不能使用yeild关键字
10.Vue-cli是如何使用json数据模拟
1.使用json-server(不能用post请求)
2.使用express(可以使用post请求)
3.mock.js就是一个模拟服务器端数据的js库
11.Es6有哪些新特性
在这里插入图片描述
12.jquery和Vue使用起来有什么区别?
1.jQuery首先要获取到dom对象,然后对dom对象进行进行值的修改等操作
2.Vue是首先把值和js对象进行绑定,然后修改js对象的值,Vue框架就会自动把dom的值就行更新。
3.可以简单的理解为Vue帮我们做了dom操作,我们以后用Vue就需要修改对象的值和做好元素和对象的绑定,Vue这个框架就会自动帮我们做好dom的相关操作
4.这种dom元素跟随JS对象值的变化而变化叫做单向数据绑定,如果JS对象的值也跟随着dom元素的值的变化而变化就叫做双向数据绑定

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值