Vue cached怎么创建


这篇文章主要介绍了Vue cached怎么创建的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue cached怎么创建文章都会有所收获,下面我们一起来看看吧。创建一个纯函数的缓存版本主要用途:优化性能;对于之前运算过一次的内容,利用闭包原理,缓存起来,避免重复调用,造成性能的浪费这一段的源码很短,但是在源码中使用了19处!这就显得这个函数很重要了fn:(函数类型)用于执行需要缓存的方法str:字符串类型传入函数fn中的参数类型为:函数类型首先通过Object.create创建一个干净的空对象出来然后直接返回一个函数(cachedFn)函数内首先定义变量,通过传入的参数str去访问创建出来的cache对象若hit击中了目标,即不为undefined——直接返回,不再调用函数若未击中,则访问传入的fn函数,并把函数返回值赋值给cache对象这样可能比较抽象,我们直接做一个实验,同样直接在浏览器中做这一次,我们直接在浏览器的源代码中做——debug直接打一个断点,看看会发生什么执行第一次在第一次运行时,发现cache是一个空的object,然后直接进入了立即执行函数cacheFn中这里立即执行函数的作用就是创建新的作用域,隔离变量——于将var使用变为let效果一致str值为abc,也就是传入参数免费云主机域名fn中的参数下一步执行,当然就是执行fn函数了我们可以看到这里的fn函数就是对应capitalize中的function,将str的参数传进来执行的结果就是Abc右边执行完成后,赋值给左侧的cache[str]这里的代码可以翻译成,或许更好理解cache[str] = “Abc”也就是说,这里相当于通过方括号属性访问器,创建了一个不存在的属性abc,对应的值是fn返回的Abc在右侧监视的cache也明显的多出了一个属性abc执行第二次此时我们看见,cache此时是具有属性abc的,因此hit的值不再是undefined第二次时,很明显的我们可以看见执行过程,没有再次调用fn函数,也就是说没有调用capitalize中的函数,而是直接获取的缓存。从而也就做到了对性能的优化。为什么cache是有效的,每次调用函数的时候不都创建了新的吗?这里其实使用的是闭包的特性。在调用cached函数时,会在当前函数创建一个cache对象也就是说,其实cache对象是属于当前示例中的capitalize这个我们可以直接在属性中看出来我们重新debug一次,这一次关注capitalize中的值第一次执行时第二次执行时在运行完cache[str] = fn(str)后,发现的确这里的值增加了一个因此,我们可以得出结论。小结:在每一次调用cached时,由于闭包函数的特性,使得cached中的变量值不会被清空,而且这个值是在对应的处理方法中的。因为cache对象是在内部创建的,所以每次调用cached都将是不同的object各自拥有独立的缓存空间,而不是全局共用一个关于“Vue cached怎么创建”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Vue cached怎么创建”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注百云主机行业资讯频道。

相关推荐: Android怎么实现显示和隐藏密码功能

这篇文章主要介绍“Android怎么实现显示和隐藏密码功能”,在日常操作中,相信很多人在Android怎么实现显示和隐藏密码功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Android怎么实现显示和隐藏密码功能”的疑惑有所帮…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 03/28 20:54
下一篇 03/28 20:54

相关推荐