草庐IT

粒子群优化

全部标签

javascript - 无法在 Node v6.4.0 中启用尾调用优化

我不想在node/es2015中玩尾调用优化,但我不断收到RangeError:Maximumcallstacksizeexceeded。所以我尝试了一个非常简单的测试功能:functioncountTo(n,acc){if(n===0){returnacc;}returncountTo(n-1,acc+n);}console.log(countTo(100000,0))还是失败了。我试过在函数体内和文件顶部添加'usestrict';。我试过使用--harmony和--harmony-tailcalls相同的功能在Racket中如预期的那样工作:#langracket(definec

javascript - JavaScript 可以优化这个对象吗?

假设我们像这样定义一个新对象:constfoo={number1:1,number2:2}这应该使用这两个属性定义一个新的“隐藏类”。现在假设我使用ES6类语法定义了一个新类。classNumbers{constructor(){this.number1=1this.number2=2}}然后我从中创建一个新对象。constbar=newNumbers()现在的问题是:bar的“隐藏类”是否与foo的隐藏类相同?因为我想象的是,第一个定义将创建一个具有两个属性的新“隐藏类”,而第二个定义将创建一个新的“隐藏类”,然后它将创建一个具有一个属性的新“隐藏类”然后用另一个属性创建另一个“隐藏

javascript - `es2016` 预设的 Babel 是否实现了尾调用优化?

我使用以下示例来测试Babel和es2016预设的尾调用递归:'usestrict';try{functionr(n){if(n%5000===0)console.log(`reachedadepthof${n}`);r(n+1);}r(0);}catch(e){if(!(einstanceofRangeError))throwe;elseconsole.log('stackblown');}我的package.json文件是:{"name":"tail-call-optimization","version":"1.0.0","description":"","main":"inde

javascript - 休息参数是否允许优化?

TheManagingargumentssectioninBluebird'sarticleonOptimizationkillers指出:Theargumentsobjectmustnotbepassedorleakedanywhere.换句话说,不要做以下事情:functionleaky(){returnarguments;}但是这样做:functionnot_leaky(){vari=arguments.length,args=[];while(i--)args[i]=arguments[i];returnargs;}随着Restparamters的引入,传递rest参数数组还会

javascript - 优化图像的javascript预加载

我想知道是否有人有任何策略可以通过javascript优化图像的预加载?我正在将Flash应用程序移植到html/css中,试图重新创建尽可能接近原始站点的UI。它本质上是一个照片浏览器应用程序,当用户将鼠标悬停在链接上时会显示高分辨率图像。每页大约有50-80张这样的图片。单独预加载所有图像会导致加载时间明显长于Flash应用程序的加载时间。数据量是相同的,但我必须假设较长的加载时间是由于每张图像必须与服务器进行的往返次数。此外,我发现即使在缓存图像之后每个页面的加载时间也很长,因为页面仍然需要联系服务器以获取每个图像以接收304NotModified代码。有人对加快速度有什么建议吗

javascript - 对 mean.js 全栈 javascript 应用程序的搜索引擎优化仍然是一个主要问题,应该如何处理?

我正在开发我的第一个全栈javascript应用程序,专门使用mean.js作为我的起点,我开始对搜索引擎优化(SEO)问题感到紧张和困惑。Google最近(大约在去年左右)为改进javascript抓取所做的努力是否使这不是一个问题,或者这是我在项目的规划和结构中需要考虑的事情?如果Google现在可以抓取AngularJS/Ajax繁重的应用程序,为什么我们会收到有关SEO问题解决方案的博客文章:http://blog.meanjs.org/post/78474995741/mean-seo是否需要这种解决方案。就SEO而言,这是否与服务器端呈现一样有效。hashbang(#!)u

ES调试与优化工作笔记

本文主要涉及关于elastcisearch关于内存,mapping,查询语句,系统性能查看方面基本的内容和一些调试方法的整理和收集。参考阅读官方关于index性能优化方案https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-indexing-speed.html官方关于search性能优化方案https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-search-speed.html官方关于mapping设置的一些限

Javascript 性能优化

我创建了以下js函数functioncsvDecode(csvRecordsList){varcel;varchk;varchkACB;varchkAF;varchkAMR;varchkAN;varcsvField;varcsvFieldLen;varcsvFieldsList;varcsvRow;varcsvRowLen=csvRecordsList.length;varfrag=document.createDocumentFragment();varinjectFragInTbody=function(){tblbody.replaceChild(frag,tblbody.fir

javascript - 优化-获取数组中的第三大数字

所以,我正在努力应对这个挑战,以返回数组中第三大的数字。我已经解决了,直到我意识到我必须考虑重复数字。我通过添加3层带有变量i、j和k的for循环来处理这个问题。你会明白我在代码中的意思。这不是非常有效或可扩展。我的问题是,我该如何优化这段代码?我应该使用哪些其他方法?functionthirdGreatest(arr){arr.sort(function(a,b){if(ab){return-1;}else{return0;}});for(vari=0;iarr[j]){if(arr[j]>arr[k]){returnarr[k];}}}}}}console.log(thirdGre

javascript - 优化/函数运行时 v8 状态代码会发生什么变化?

我看到一个关于v8Optimization的问题这让我尝试了一下v8优化。我还看过关于v8的bluebird帖子Optimizationkillers.根据v8repo,优化状态代码是2的乘积:1,2,4,8等等(参见OptimizationStatus枚举)然而,下面的代码给了我奇怪的状态代码,比如17和65,而且只在这些特定情况下(见最后几行代码)。关于为什么会发生这种情况的任何想法?functionadder(a,b){returnnewFunction('a','b','returnb%2?a+b:b%3?a-b:b%5?b/a:a*b')(a,b);}functionadde