type HashFunction = (...args: any[]) => any;
// 函數(shù)記憶
export function memorize(f: Function, hasher?: HashFunction) {
const cache: Record<string, any> = {};
return function (...args: any[]) {
const key = hasher ? hasher(...args) : JSON.stringify(args);
if (!cache[key]) {
cache[key] = f.apply(this, args);
}
return cache[key];
};
}
function add (a, b) {
return a + b;
}
const memorizedAdd = memorize(add);
console.log(memorizedAdd(1, 2)) // 3
console.log(memorizedAdd(1, 2)) // 不經(jīng)過(guò)計(jì)算直接得出3
函數(shù)記憶
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門瞳遍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)闻妓,“玉大人,你說(shuō)我怎么就攤上這事掠械∮衫拢” “怎么了注祖?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)犁功。 經(jīng)常有香客問(wèn)我氓轰,道長(zhǎng),這世上最難降的妖魔是什么浸卦? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮案糙,結(jié)果婚禮上限嫌,老公的妹妹穿的比我還像新娘。我一直安慰自己时捌,他們只是感情好怒医,可當(dāng)我...
- 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著奢讨,像睡著了一般稚叹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拿诸,一...
- 那天扒袖,我揣著相機(jī)與錄音,去河邊找鬼亩码。 笑死季率,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的描沟。 我是一名探鬼主播飒泻,決...
- 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼吏廉!你這毒婦竟也來(lái)了泞遗?” 一聲冷哼從身側(cè)響起,我...
- 序言:老撾萬(wàn)榮一對(duì)情侶失蹤席覆,失蹤者是張志新(化名)和其女友劉穎史辙,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體娜睛,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡髓霞,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了畦戒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片方库。...
- 正文 年R本政府宣布邀层,位于F島的核電站返敬,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏寥院。R本人自食惡果不足惜劲赠,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望秸谢。 院中可真熱鬧凛澎,春花似錦、人聲如沸估蹄。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)臭蚁。三九已至最铁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間垮兑,已是汗流浹背冷尉。 一陣腳步聲響...
- 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像嗤无,于是被迫代替她去往敵國(guó)和親震束。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- 近日嘉栓,由張介公博士主講、喜馬拉雅電臺(tái)協(xié)助發(fā)行拓诸,全國(guó)各地的學(xué)子紛紛號(hào)召支持下侵佃,集科學(xué)教育記憶題材于一體的大型史詩(shī)教育...
- 純記憶函數(shù) 使用閉包解決重復(fù)計(jì)算的性能開(kāi)銷 1.斐波納列數(shù)列 func Memoize(function memo...
- 記憶術(shù)一詞是我在《高階Perl》一書中看到的,書中介紹了如何利用Perl語(yǔ)言的閉包特性給子程序添加記憶功能奠支,從而減...