lodash中的存根函数有什么作用?

3

有人可以告诉我什么是用例吗?

_.stubArray
_.stubFalse
_.stubObject
_.stubString
_.stubTrue

为什么不直接做...
() => []
() => false
() => ({})
() => ''
() => true

我的意思是,如果去掉填充=>的空格,它们中有一半本来就更短。在代码中使用这些lodash函数是否明智?

3个回答

4

仅举一个用例:当Lambdas在React渲染函数中使用时,它们每次运行都会创建一个新的不同函数,因此可能会导致不必要的重新渲染。而Lodash stubbs则没有这个问题。


1
使用场景:不必多次创建具有相同返回的函数,您可以使用一个实例。

-4

这没有意义。在没有lambda的旧浏览器上,它们会占用稍微更多的空间... 这里是源代码

function stubArray() { return [] }
function stubFalse() { return false }
function stubObject() { return {} }
function stubString() { return '' }
function stubTrue() { return true }

现在它们只是占用空间的废物,而且还需要在lodash文档中阅读更多相关内容。


1
因为它们确实有一定的意义,所以被踩了。在某些情况下,拥有一个返回静态值的函数的单个实例比创建匿名函数更有用。在循环或处理许多对象时,创建匿名函数可能会非常昂贵。"更短"并不总是意味着更好。 - Clay

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接