关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭7年前。Improvethisquestion我听说java中的instanceof运算符是一个性能问题,对于Javascript(IE6、IE7、IE8、FF、Chrome、safari等)也是如此吗?任何指向真实论文的链接都会有所帮助。
我有一个自动完成表单,用户可以在其中输入一个术语,它会隐藏所有不包含该术语的元素。我最初遍历了所有使用jQuery的each并应用.hide()那些不包含该术语的。这太慢了。我发现一个更快的方法是遍历所有并申请类(class).hidden所有需要隐藏的,然后在循环结束时做$('.hidden').hide().不过,这感觉有点老套。可能更快的方法是重写.hidden的CSS规则类使用document.styleSheets.谁能想到更好的方法?编辑:让我澄清一些我不确定有多少人知道的事情。如果您在循环的每次迭代中更改DOM,并且该更改会导致重新绘制页面,那么这将比“准备”所有更改并在
我正在玩弄system.js(受angular2的启发,在他们的教程中使用它),但即使对于最微不足道的示例,我的性能也差得离谱。例如,以下代码在第二个(System.import之前的那个)和最后一个(在app.js中)控制台之间有26000ms(!)的延迟.log在本地运行时(因此没有网络延迟)index.html:System.jsSampleconsole.log("1:"+newDate().getTime());console.log('2:'+newDate().getTime());System.import('app.js');应用程序.js:console.log('
我的预订引擎在IE7中运行缓慢。它是基于ajaxified和散列/窗口onchange的。总共有5个步骤。我遇到的主要问题是第2步在IE中非常慢。当用户进入第2步时,系统会发出ajax请求以使用Web服务提取数据以显示酒店房间。酒店客房分为主要房型和内部更具体的房型。应用于酒店房间的JS功能包括:房间里的Accordion房间类型的Accordion(嵌套Accordion)快速翻转图片jscrollpane,图片翻转后左侧房间描述自定义滚动条jscrollpane,右侧房型自定义滚动条所有这一切导致了著名的:我用谷歌搜索并找到了this、this和this。很明显,原因是IE中在特定
我正在做一些javascript3D处理,我有大量的对象(比如对象A),每个对象都包含一些东西和一组正整数,例如[0,1,4],[1,5,74,1013]等。它们不需要有私有(private)值,所有对象都可以共享同一个列表。这些数字可以从0到几千,比如65k(短)。分析显示这些数组占用了大量内存。在计算时,我的程序达到了超过2GB的分配内存,这不是愚蠢的预优化。我有2个内存优化线索:找到一种更节省内存的方式来存储这些列表(也许是大数位数组?)想办法避免重复。例如,我碰巧发现一些数组(如[0,1,2,3,4,5,6])存在于超过40000个对象A中。也许将这些数组存储在树结构中并制作我
仍在尝试回答thisquestion,我想我终于找到了解决方案,但它运行得太慢了。var$div=$('').css({'border':'1pxsolidred','position':'absolute','z-index':'65535'}).appendTo('body');$('body*').live('mousemove',function(e){vartopElement=null;$('body*').each(function(){if(this==$div[0])returntrue;var$elem=$(this);varpos=$elem.offset();v
我正在为我的网站应用程序做速度优化。我找到了一些实践来做到这一点。例如BestPracticesforSpeedingUpYourWebSite来自雅虎。其中有:精简JavaScript和CSS。通过将多个文件(css、js)合并为一个文件,最大限度地减少HTTP请求的数量。我的问题是您使用什么基础设施、工具和构建过程,或者可以推荐什么来执行这些? 最佳答案 根据JavaScriptCompressionRater,最有效的工具是YUICompressor或JSMin. 关于javasc
我必须找到非常大的数组的最大值和最小值。为此,我正在使用Math.max.apply(Math,my_array);Math.min.apply(Math,my_array);它在Firefox和IE上运行良好,但在Chrome上我总是得到Maximumcallstacksizeexceeded错误...我当前的数组有221954个元素,这不是我最大的。有人知道如何在Chrome上解决这个错误吗?如何优化最大值和最小值的搜索?对于那些不相信的人,请在Chrome的控制台中尝试:varxxx=[]for(vari=0;i--->RangeError:超出最大调用堆栈大小
给定一些像这里这样的JS代码:for(vari=0;i如果我们在循环之前将getElementsByName的结果放入一个变量中,然后在循环之后使用该变量,代码会更快吗?我不确定在现实生活中影响有多大,getElementsByName的结果通常有另外,如果这两个选项还有什么值得注意的地方,请告诉我。 最佳答案 当然。存储所需的内存只是一个指向DOM对象的指针,与每次需要使用某些东西时进行DOM搜索相比,这显着不那么痛苦!理想代码:varscale_select=document.getElementsByName('scale_s
看起来,对于许多javascript小部件,作者有意使用微小的变量名。例如://Insteadof...this.mousePositions=newArray();//theyuse...this.mp=newArray();我的问题是:这对于减少整体javascript文件请求大小有多重要?我正在努力向公众发布一个javascript小部件,它在缩小后约为2.8KB。然而,因为这个插件的主要优点是它的轻量级,有没有人有经验是否值得通过这些新的微小变量名来切换所有有意义的变量名?这样看起来代码的可读性要差得多,而且维护起来也会困难得多。感谢您的帮助!查理