_.memoize()方法用于通过缓存函数计算的结果来存储给定的函数。如果发出了解析器,则根据提供给备注方法的参数确定用于存储结果的缓存键。默认情况下,提供给备注函数的第一个参数用作Map缓存键。
用法:
_.memoize(func, [resolver])
参数:此方法接受上面提到和下面描述的两个参数:
- func:此参数保存要 memory 其输出的函数。
- resolver:它是解析缓存键的函数。
返回值:此方法返回新的 memory 函数。
注意:在这里,const _ = require(‘lodash’)用于将lodash库导入文件中。
范例1:
Javascript
// Requiring the lodash library
const _ = require("lodash");
// Use of _.memoize() method
var sum = _.memoize(function (n) {
return n < 1 ? n:n + sum(n - 1);
});
// Sum of first 6 natural number
console.log(sum(6));
输出:
21
范例2:
Javascript
// Requiring the lodash library
const _ = require("lodash");
var object = { 'cpp':5, 'java':8 };
// Use of _.memoize() method
var values = _.memoize(_.values);
// value of object
console.log(values(object));
// Modify the result cache.
values.cache.set(object, ['html', 'css']);
console.log(values(object));
输出:
[5, 8] ['html', 'css']
注意:在正常的JavaScript中这将无法正常工作,因为它需要安装库lodash。
相关用法
- Underscore.js _.memoize()用法及代码示例
- Lodash _.method()用法及代码示例
- Lodash _.sneq()用法及代码示例
- Lodash _.toQuery()用法及代码示例
- Lodash _.uniqWith()用法及代码示例
- Lodash _.xorWith()用法及代码示例
- Lodash _.head()用法及代码示例
- Lodash _.remove()用法及代码示例
- Lodash _.pullAt()用法及代码示例
- Lodash _.pullAll()用法及代码示例
- Lodash _.pull()用法及代码示例
- Lodash _.nth()用法及代码示例
- Lodash _.takeRight()用法及代码示例
- Lodash _.take()用法及代码示例
- Lodash _.sortedLastIndex()用法及代码示例
- Lodash _.fromPairs()用法及代码示例
- Lodash _.differenceWith()用法及代码示例
- Lodash _.castArray()用法及代码示例
- Lodash _.cloneDeep()用法及代码示例
- Lodash _.clone()用法及代码示例
- Lodash _.sampleSize()用法及代码示例
- Lodash _.find()用法及代码示例
- Lodash _.zipWith()用法及代码示例
- Lodash _.zipObject()用法及代码示例
注:本文由纯净天空筛选整理自sanjoy_62大神的英文原创作品 Lodash _.memoize() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。