草庐IT

索引优化

全部标签

javascript - 检测在不可见和在视口(viewport)外时是否对canvas/css3动画进行了优化

我假设使用HTML5中的所有这些硬件加速动画,实际上不会渲染在视口(viewport)之外运行的动画。我希望能够检测到是否正在发生。我尝试在每秒移动100px的对象上循环使用webkitCSSMatrix来尝试确定每个刻度线移动了多少像素,但是如果我将动画移出视线则没有区别。有任何想法吗? 最佳答案 您可以使用单独的计时器测试来查看伪经验方面在外部和内部绘制的对象之间的差异(计时器实际上并不能证明任何东西,但可以为您提供强大的indisium)。但是,了解Canvas的工作原理也可以为您提供坚实的指导。例如,Canvas是一个简单的

javascript - 如何获取优化掉的变量值?

一些变量可以在Javascript执行期间被“优化掉”。因此,此类变量的值在调试时不可用于检查(Userdocumentation)。变量View显示(优化掉)消息,如果尝试评估变量,控制台会抛出以下错误:Error:variablehasbeenoptimizedout有什么方法可以在Firefox中强制评估此类变量或禁用此优化? 最佳答案 以防止这种优化的方式使用变量。functionNOP(){}//thenintheoptimisedcodeNOP(myvar);//debugginghereshouldnowshow`my

javascript 在两个不同的索引处拆分字符串

我有一张amexI.E.的信用卡#371449635398431我想分成3个部分371449635398431-有没有一种简单的方法可以按预定义的索引(在本例中为4和10)拆分字符串),可能有一个简单的正则表达式函数? 最佳答案 我真的不认为这里需要正则表达式。如果您知道需要拆分的索引,您可以这样做:varinput='371449635398431'varpart1=input.substr(0,4);varpart2=input.substr(4,6);varpart3=input.substr(10);但是如果正则表达式是必须

javascript - 检查数组是否包含字符串的一部分并找到索引号

constmyArr=["blue","red","orange","green"];我想知道如何检查数组是否包含字符串的一部分以及匹配字符串的索引号。我在网上看到过这个,但是索引号不显示位置,除非它是数组中的全名。myArr.indexOf("oran") 最佳答案 您可以使用some检查是否至少有一个元素可以验证您的条件:varhasSome=myArr.some(function(v){returnv.indexOf("oran")>=0})如果您需要索引,反向for循环是更简单的解决方案:for(vari=myArr.len

javascript - NodeJS 循环优化

我知道在浏览器中,按照for(vari=0,l=arr.length;i代替for(vari=0;i但是在NodeJS中是这样还是V8引擎优化了呢?我知道ecma-2625.1sec-15.4数组长度定义如下:Thevalueofthelengthpropertyisnumericallygreaterthanthenameofeverypropertywhosenameisanarrayindex;wheneverapropertyofanArrayobjectiscreatedorchanged,otherpropertiesareadjustedasnecessarytomain

javascript - 基于索引数组过滤数组

首先,如果它是重复的,我深表歉意(我搜索过但没有找到这个简单的例子......),但我想根据arr2arr1的元素:arr1=[33,66,77,8,99]arr2=[2,0,3]我正在使用underscore.js但未检索到0索引(似乎被认为是false):res=_.filter(arr1,function(value,index){if(_.contains(arr2,index)){returnindex;}});哪个返回:#[77,8]我该如何解决这个问题,是否有更简单的方法来使用索引数组进行过滤?我期待以下结果:#[77,33,8] 最佳答案

javascript - 在使用数万个索引的 Javascript 中使用数组是否可取?

在使用数万个索引的Javascript中使用数组是否可取?我有一个包含静态数据表的数据库,这意味着它永远不会改变。在这种情况下,是否建议将此表转换为javascript数组并在需要时在其中查找信息?这是不好的做法吗?有问题的表包含大约40,000个键/值对条目。 最佳答案 没有。我会保留该表,作为它的单点维护。您会发现,执行XmlHTTPRequest以根据服务器端查询返回键/值对,实际上执行速度更快,并且比巨大的JavaScript数组占用的内存少得多。 关于javascript-在使

javascript - 插入或拖动后重新索引对象数组的算法 'n' 放置顺序更改

假设我有一个对象的索引数组,例如包含流行民歌台词的对象;)varlyrics=[{line:2,words:"He'salumberjackandhe'sokay"},{line:1,words:"I'malumberjackandI'mokay"},{line:3,words:"Hesleepsallnightandheworksallday"}];我的比较器将根据每个对象的索引在View中显示对象。我希望能够在此阵列上执行三个任务:任务1)在拖放时重建索引通过拖放重新排列对象的顺序。假设我已经知道如何实现拖放。任务示例:将“He'salumberjackandhe'sokay”从索

Javascript 数组使用索引合并

我正在尝试使用索引合并2个javascript数组。假设我有数组A和A[0]=1;A[1]=9;...A[5]=12;和数组B有:B[0...5]=garbage,unused;B[6]=23;B[7]=99;B[8]=31;...B[10]=990;我想合并A和B来做:merged[0]=1;merged[1]=9;..merged[5]=12;merged[6]=23;...merged[10]=999;如何做到这一点? 最佳答案 使用concat的组合和slice:varC=A.concat(B.slice(6));conca

javascript - 需要优化功能

我正在研究这个函数,它必须返回添加a和bn次的所有可能值,例如如果n=1那么可能的值将是a+aa+b和b+b。下面的功能有效,但它太慢了,我想优化它。有什么建议么?非常感谢!functionprocessData(n,a,b){varans=[0];for(vari=0;i 最佳答案 functionprocessData(n,a,b){varans=[];if(a==b){for(vari=0;ib){vartemp=a;a=b;b=temp;}vardiff=b-a;for(vari=0;i好的,这是迄今为止最有效的解决方案。我