запоминать, используя синтаксис `function f ();` - PullRequest
0 голосов
/ 14 сентября 2018

Я могу запоминать функцию с помощью:

  • const f = memoize(function(){/* ... */})
  • const f = memoize(() => {/* ... */})

Однако, с целью создания хороших документов,Мне нужно использовать синтаксис:

function f() {
  /* ... */
}

Как мне это запомнить?

Ответы [ 3 ]

0 голосов
/ 14 сентября 2018

Как сказал @Jonas, впоследствии вы можете просто перезаписать объявленную переменную (f = memoise(f)).Современная альтернатива - использовать предложенный и экспериментальный декоратор вместе с вашим любимым транспилером и написать

@memoise
function f() {
  /* ... */
}
0 голосов
/ 15 сентября 2018

Сделайте const f1 = memoize(function(){/* ... */}) или const f1 = memoize(() => {/* ... */}) по своему усмотрению, а затем напишите function f() { ... }, который просто вызывает f1 со своими параметрами и возвращает результат.

0 голосов
/ 14 сентября 2018

просто добавьте строку:

 function f() {
   /* ... */
 }
 // @ts-ignore
 f = memoize(f);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...