那些有趣的面试题,看一看?

1.作用域

var test = 'hello';
(function test(){
   test = 'word'
console.log(test)
})()

2.惰性函数

惰性函数(Lazy Function): 惰性函数表示函数执行的分支只会在函数第一次调用的时候执行,在第一次调用过程中,该函数会被覆盖为另一个按照合适方式执行的函数,这样任何对原函数的调用就不用再经过执行的分支了。

  惰性函数的本质就是函数重写,所谓惰性载入,指函数执行的分支只会发生一次。那什么时函数重写呢?由于一个函数可以返回另一个函数,因此可以用新的函数在覆盖旧的函数。

3.this指向

var length = 1
function fun(){
   console.log(this.length)
}

var arr = [fn,2,3]
arr[0]()

var f1 = arr[0]
f1()

4.数组解构

var obj =  {x:1,y:2}
var [x,y] = obj
//此时报错   怎么样让它正确执行

obj[Symbol.iterator] = function*(){
  yield this.x;
  yield this.y;
}

5.pina与vuex区别

配置参数pinia只有三个或四个(persist持久存储配置),vuex多了mutation \ modules,action支持异步和同步

pinia中单个文件即模块。 使用时toStoreRefs解构

6.useMemo使用场景

排除同级组件渲染时方法会一并执行,当大量数据计算时,仅想依赖改变时才执行并返回结果

7.useCallback和memo

useCallback和memo经常同时使用,用来记忆和缓存函数和组件以避免重复不必要的渲染,场景是父组件重新渲染,子组件依赖没有改变,不需要重新渲染时使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weifont

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值