JS记忆优化-闭包
来源:互联网 发布:人人店微分销源码下载 编辑:程序博客网 时间:2024/05/29 14:04
对于记忆模式的优化方面,在树上看到的不错的例子!
——节省了调用函数执行的时间
一般的递归函数的调用示例如下:
function normaldigui(){ var count=0; var fibonacci=function(n){ count++; return n < 2 ? 1 : fibonacci(n-1) + fibonacci(n-2); }; for(var i=0;i<=5;i++){ document.writeln(fibonacci(i)+",,,"+count+"<br/>"); }}window.onload= function(){ var startTime,endTime; var d= new Date(); startTime = d.getTime(); normaldigui(); var d= new Date(); endTime = d.getTime(); document.writeln(endTime-startTime);}
最后结果:
下面是优化后的代码:
//记忆优化的示例,使用了闭包,节省了反复执行同n时的方法时间,也是对一般的递归形式进行优化function jiyi (){ var count=0; var fibonacci = function() { console.log(count); var memo = [0,1]; var fib = function(n){ count++; var result = memo[n]; if(typeof result !== 'number'){ result = fib(n-1) + fib(n-2); memo[n] = result; } return result; }; return fib; }(); for(var i=0;i<=5;i++){ document.writeln(fibonacci(i)+",,,"+count+"<br/>"); }}window.onload= function(){ var startTime,endTime; var d= new Date(); startTime = d.getTime(); jiyi(); var d= new Date(); endTime = d.getTime(); document.writeln(endTime-startTime);}
最后结果:
阅读全文
0 0
- JS记忆优化-闭包
- JS:函数的记忆功能(闭包)
- 记忆函数+闭包
- js代码优化02(闭包)
- golang积累-记忆闭包
- js优化技术---记忆(memoization)实例测试
- Js中通过记忆来优化递归方法
- webpack + react 优化:缩小js包体积
- webpack + react 优化:缩小js包体积
- hdu1208(记忆优化)
- 记忆便笺内存优化
- js 自记忆函数
- JS radio记忆选择
- js 记忆要点
- js闭包示例
- JS 闭包 计数器
- js闭包
- js 闭包
- 二分图匹配 之 二维坐标建图
- get请求中文乱码问题解决和参数编码
- PCIe学习笔记(25)--- PL-Logical (Gen 1 and Gen 2) --- (2)
- linux下epoll服务器代码实现
- js 闭包
- JS记忆优化-闭包
- 身边的牛人
- IPython与IPython Notebook安装及使用
- |3106|小鑫数数儿
- gitlab常见操作
- Hadoop-No.1之数据存储选型
- 利用PL/SQL从oracle中导入导出数据
- Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks
- 关于servlet和jersey单例