<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>纯函数默写第一遍</title> </head> <body> <script> function getArea(r) { return Math.PI * r * r; } function memorize(func) { let obj = {}; return function () { let key = JSON.stringify([...arguments]); if (!obj[key]) { console.log(123); obj[key] = func(...arguments); } return obj[key]; }; } let getOneArea = memorize(getArea); console.log(getOneArea(5)); console.log(getOneArea(5)); console.log(getOneArea(5)); console.log(getOneArea(5)); console.log(getOneArea(5)); console.log(getOneArea(4)); </script> </body> </html>