jjzjj

optimization

全部标签

ruby-on-rails - 您如何查看 ruby​​ 中的调用堆栈示例?

我正在研究不同的优化技术,我发现了这篇文章AnalyzingCodeforEfficiency?相信对调用堆栈进行采样比使用分析器更有效的人。基本思想是,如果您查看调用堆栈,您会看到您的应用程序最有可能花费大部分时间的地方,然后在那里进行优化。这当然很有趣,而且他显然是这方面的专家,但我不知道如何在ruby中查看调用堆栈。在调试器中,我可以说“信息堆栈”,但似乎只显示一行。编辑:我看到MikeDunlavey的评论:“我只想指出,如果你在调试器下运行,手动中断它,并显示调用堆栈......”我只是不确定如何手动中断它并隐藏调用堆栈。 最佳答案

javascript - Function() 构造函数是否没有像 eval 那样被 V8 优化?

我们正在尝试一种通过WebSockets接收网络组件的方法。这些组件包含自定义脚本,它们应该在组件内的上下文中运行。简而言之,我们有一些脚本字符串并想要运行它们。现在我们为此使用eval,像这样:functionctxEval(ctx,__script){eval(__script);//returnthingswiththectx}并按预期工作,但我读到任何包含eval的函数都没有被V8优化。我想像这样将它转换为newFunction():newFunction("ctx",__script)(ctx);这样我可以实现与上面的ctxEval函数相同的效果。我们知道Function是e

javascript - 禁止将 Google Analytics cookie 发送到无 cookie 域

为了优化我的网站,我为图像、CSS和JavaScript等内容设置了一个静态子域。我如何阻止将谷歌分析跟踪cookie发送到我的静态子域,但仍然发送到example.com和www.example.com?已经浏览了一些文档但没有运气 最佳答案 您不能让cookie发送到www.example.com和example.com而不是othersubdomain.example.com.理论上,您可以将cookie发送到example.com而不是subdomain.example.com,但它在IE中不起作用。这就是为什么当您计划使用

javascript - 在数组中缓存 jQuery 对象会提高速度吗?

今天我正在使用jQuery制作共享图标效果。效果有点复杂所以想办法优化性能。我最终将$(this)对象缓存到数组中。效果演示我上传了一个使用数组缓存对象的效果示例(将鼠标悬停在图标上以查看效果):http://mahersalam.co.cc/addthis/HTML:أضفللمفضلةشاركفيفيسبوكشاركفيتويترأرسلالصفحةبالإيميلالمزيدمنالخدماتJavascript://ReturnjQuery-objofthesharelinksvarshareLinks=$('#share-widget').find('a').css('opa

javascript - JavaScript 中的“内联”?

在JavaScript中,使用我自己的模拟器实现,从32位指令i中获取寄存器字段RA的值通常表示为:this.gpr.u32[(i>>16)&0x1f]然而,在一个函数中多次使用上述表达式是丑陋的,并且难以理解和编辑。我避免使用该表达式定义变量ra并使用它,因为我认为它会存储在内存中,并且获取它会很昂贵。我应该担心这个还是现代JavaScript引擎将变量的值“内联”到定义后面的语句中?虽然使用变量可以使代码更简洁,但如果它会在模拟器等对性能敏感的环境中减慢执行时间,我真的不想使用它。 最佳答案 答案中有很多“视情况而定”。首先,它

javascript - 是否在每个循环中评估 for 循环中的条件?

我有这样的情况:for(vari=0;i我是否应该担心在每次迭代中都执行了加法?或者JavaScript(它的解析器?)足够聪明,可以理解a+b是常量?换句话说,我应该这样做吗:varend=a+b;for(vari=0;i还是会浪费一行代码?嗯,实际上我担心的不是那一行代码,而是我每次在JavaScript中遇到这样的情况时都在想它!另外,今天是加法,明天可能是其他东西,比如它的平方根,所以我认为这很重要! 最佳答案 每次都会评估条件。发件人:https://developer.mozilla.org/en-US/docs/Web

javascript - 使用 javascript 设置样式值时的数字或字符串

有些css值是用数字定义的,比如opacity我知道在编写css时,我会这样做:#element{opacity:1;/*withoutaquotemark,just1*/}但是当我要用javascript修改opacity时,我应该提供什么?只有0.5或"0.5"?如果我运行:typeofdocument.getElementById('element').style.opacity//returns"srting"所以我过去常常在修改它的时候提供字符串。但是有人审查我的代码,建议我提供如下数字:document.getElementById('element').style.opa

javascript - JQuery - 将列表项附加到列表的最快方法

我有一些jquery可以正常工作,但我想对其进行高度优化。基本上我是将标准的列表项附加到无序列表。谁能推荐最快的优化以下代码的方法,例如创建文档片段?for(keyindata){li=$(''+data[key]["Name"]+'');$('.item',li).data('ID',data[key]["Id"]);$(list).append(li);} 最佳答案 varsb=newArray();for(keyindata){sb.push('',data[key]["Name"],'')}$(list).append(sb

使用 `new Function()` 优化 Javascript

在阅读文档时,我发现了一个可以大大提高javascript性能的简单优化。原代码:functionparseRow(columns,parser){varrow={};for(vari=0;i优化代码:varcode='return{\n';columns.forEach(function(column){code+='"'+column.name+'":'+'parser.readColumnValue(),\n';});code+='};\n';varparseRow=newFunction('columns','parser',code);在这里找到:https://github

javascript - 优化 JavaScript 加载的最佳实践

我在网上阅读了几篇关于优化javascript加载的文章。我得到的几个关键点是最小化脚本文件(http请求)的数量,缩小并在服务器上启用gzip。目前,我这边所做的是缩小所有javascript文件,并且也可以简单地启用gzip。第1部分)我的问题是我有大约20个javascript文件,其中一个common.js具有所有核心功能。除此之外,每个页面都会加载至少一个实现该页面功能的其他文件。解决方案1,是将所有脚本合并到一个大脚本文件中,并为每个客户端加载一次,这似乎是其他人正在做的。我猜YUI或者JSMin可以用来压缩,所以我应该手动合并文件?解决方案2,当需要一个必需的功能时延迟加