草庐IT

javascript - jQuery:get() 比 load() 慢

显而易见的问题-为什么?我需要从外部页表单元格中获取,然后将其注入(inject)当前页。使用了复杂的选择器。这是.load():$('#check').load('https://bla-bla-bla.small:contains(Something)+.small:lt(1)');这是.get():functionshowGetResult(){varresult=null;varscriptUrl="https://bla-bla-bla";$.get(scriptUrl,function(data){result=$(".small:contains(Something)",

javascript - WebWorkers 的执行似乎比主线程慢得多

我一直致力于优化一些长时间运行的JavaScript,并尝试实现WebWorkers。我有一组独立的任务要计算。在我的初始测试中,有80个任务,在主线程上用了250毫秒完成。我认为我可以将任务分配给一些网络worker,并将时间缩短到50毫秒左右。我的数据是嵌套多个类型数组的几何数据结构。我有将所有数据提取到JSON+ArrayBuffer对象数组的方法,因此我可以将传输的数据传递给WebWorker,而无需复制大数组。我已经测试了数据传输,并确认它按预期工作。传输到WebWorker后,我的类型化数组在主线程中为空。我(目前)预先启动了4个WebWorker,以便在需要完成工作时,W

javascript - 为什么 for() 函数比 ES6 map() 和 some() 更快地查找重复项?

这个问题在这里已经有了答案:WhymostJavaScriptnativefunctionsareslowerthantheirnaiveimplementations?(1个回答)关闭4年前。我想使用map()和some()对我正在使用的函数进行基准测试,以确定对象数组中是否存在重复属性另一个函数做同样的事情,但在另一个for()中使用for()。letarray=[{"value":41},{"value":12},{"value":32}];letitens=array.map(x=>x.value);lethaveDuplicate=itens.some((item,idx)=

javascript - 这个编译为 JavaScript 的 Haskell 程序如何比 JavaScript 本身更快?

我一直认为,与手动编写和优化的代码相比,GHCJS生成的JavaScript程序非常慢,原因很明显。不过,在试用它时,我发现它并没有我预期的那么糟糕。我决定运行一系列小型基准测试以了解真实性能,而这个让我特别惊讶。该程序只是用“1”填充数组并将它们相加。haskell:importData.Array.Repalen=1024*1024*64arr=fromFunction(Z:.len)(const1)::ArrayDDIM1Floatmain=sumAllParr>>=printJavaScript:varlen=1024*1024*64vararr=[];varsum=0;for

javascript - jQuery 选择器 : Why is $ ("#id"). 查找 ("p") 比 $ ("#id p"快)

本页作者:http://24ways.org/2011/your-jquery-now-with-less-suck断言jQuery选择器$('#id').find('p')比$('#idp')快,尽管如果我理解的话可能会产生相同的结果正确。造成这种差异的原因是什么? 最佳答案 因为$('#id').find('p')被优化来做...document.getElementById('id').getElementsByTagName('p');...而我猜测$('#idp')将在可用时使用querySelectorAll,否则将使用

javascript - 对于字符串, [x,y,z].join ('' ) 真的比 x + y + z 快吗?

对于字符串,[x,y,z].join('')真的比x+y+z更快吗?在join()更快的印象下,我开始通过我的代码使用它而不是+,然后我在GoogleAnalytics代码中遇到了以下行:ga.src=('https:'===document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';假设Google的编码人员是最有知识的,这让我感到奇怪。当然,该行每次加载页面只会运行一次,可以说任何速度差异都可以忽略不计。但还是? 最佳答案

javascript - !0 和 !1 比 1 和 0 好吗?

我注意到ClosureCompiler将true和false(或1和0)编译为!0和!1。这对我来说没有意义,因为它的字符数是1和0的两倍。这是有原因的吗?有什么好处吗?谢谢。 最佳答案 1!==true和0!==false,但是!0===true和!1===错误。编译器只是确保类型保持bool值。考虑这个例子:vara=true;if(a===true){console.log('True!');}if(a===1){console.log('Youshouldneverseethis.');}如果将第一行更改为vara=1;,第

javascript - 为什么在 JS 中 +str 比 str*1 更好地将字符串转换为数字?

假设我有一个字符串,它的值已经是一个数字,例如varstr="1234"现在我想把它转换成数字。到目前为止,我在网上看到了两个技巧,使用一元+:varnum=+str使用乘法运算符*:varnum=str*1我想知道一般来说哪个更好。正如我从此处已接受答案的评论中看到的那样:ConvertingJsonResultstoaDate,似乎最好避免使用*1。这是真的吗?背后的原因是什么? 最佳答案 基本上操作更少。一元加号调用内部的toNumber方法,而乘法运算符也调用toNumber,然后对其进行数学运算。为什么要执行额外的步骤?h

javascript - 三元语句是否比 javascript 中的 if/then/else 语句更快?

我看到了很多:varsomething=(is_something_true())?3:4;在javascript中。这比varsomething;if(is_something_true()){something=3;}else{something=4;}还是为了方便写得简明扼要? 最佳答案 请享受这个——如果差异在统计上是有效的,那么结果(真或假)也很重要——显然这只是机器上影响浏览器性能的其他东西:Hereisthelink两者之间有一个根本的区别,三元语句是表达式而不是控制流。如果有人将它写成三元表达式而不是标准的if/th

javascript - 为什么访问对象属性总是比访问数组项更快?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我对两种方法进行了基准测试:访问数组项varobject=[10,15,20];varx=object[0];vary=object[1];varz=object[2];和访问对象属性varobject={x:10,y:15,z:20};varx=object.x;vary=object.y;varz=object.z;我希望访问数组项的速度更快,因为不涉