当前位置: 首页 > news >正文

开发门户网站需要注意什么/网络营销推广方式都有哪些

开发门户网站需要注意什么,网络营销推广方式都有哪些,做彩票网站代理犯法吗6,网页制作和网页制作原文:http://ariya.ofilabs.com/2013/04/automatic-inlining-in-javascript-engines.html 想当年,在JavaScript解释器的运行速度还很慢的时候,有一条最佳实践就是"不要在性能关键(performance-critical)的代码中使用函数调用".随着最近现代JavaScript引擎的不断发展,…

原文:http://ariya.ofilabs.com/2013/04/automatic-inlining-in-javascript-engines.html


想当年,在JavaScript解释器的运行速度还很慢的时候,有一条最佳实践就是"不要在性能关键(performance-critical)的代码中使用函数调用".随着最近现代JavaScript引擎的不断发展,这条最佳实践变的不是那么必要了.其中,能在很大程度上减少我们对"频繁的函数调用会消耗过多性能"的担心的一个新特性就是自动函数内联(automatic function inlining).

考虑下面的代码:

function square(x) {return x * x;
}function f(x) {var sum = 0;for (var i = 0; i < x; i++) {sum += square(i);}return sum;
}
如果x是一个比较大的数字,则执行f(x)的时候会非常多次的对square函数进行调用.即使该函数的单次调用的性能开销非常小,如果反复执行非常多次,这个性能开销也会变的非常显著.为此,就有了"不要在长循环体内进行函数调用"这样的一条最佳实践.

幸运的是,当这部分代码被执行的非常"热"(hot,指执行了非常多次)时,一个现代的JavaScript引擎能够感知到这一点并对其进行优化.在很多优化手段中,最简单的一条优化就是不要在每次循环中真正的调用square函数,而是直接对该函数进行内联(inline),因为这个函数非常简单,内联之后对代码的逻辑不会有任何影响.内联的意思就是说,你的代码会像下面这样的代码一样被执行:

function f(x) {var sum = 0;for (var i = 0; i < x; i++) {sum += i * i;}return sum;
}

怎么才能证明JavaScript引擎真的会对上述代码执行内联优化呢?下面是一个可行的证明方法:使用V8 debugger shell.首先,为了确保引擎会对我们的代码进行优化(代码能够变得非常"热"),我们再上述代码的基础上再加上这么一行:

for (var x = 0; x < 10000; ++x) f(1e4);
现在,如果你编译过V8并且手头已经有了V8 debugger shell(d8.exe),在命令行上执行下面的代码:
d8 --trace-inlining sum.js
就会输出这样一条信息(也可能还会有其他信息):
Inlined square called from f.

这就证明了V8最终决定不去反复的执行函数调用,还是去内联这个函数.

如果你以前经常会在给浏览器执行代码之前手动的进行函数内联操作,现在是时候改变这一做法了.你尽管考虑可维护性,即便把代码分成若干个很小的函数也没关系!在大多数情况下,我们可以相信现代的JavaScript引擎能够自动的对那些小函数进行内联优化.

http://www.lbrq.cn/news/1364293.html

相关文章:

  • 网络推广是干嘛的可以做吗/中国seo排行榜
  • 留白的网站/淘宝指数转换工具
  • 大连网站设计哪个最好/官方网站怎么查询
  • 乌克兰集团网站建设/网站关键词优化方案
  • 深圳市光明建设发展集团网站/百度sem
  • 做软装什么网站可以/站长工具如何使用
  • 全站搜索/it培训机构排行榜
  • 做网站云服务期/如何做网销
  • 自己怎么弄网站/5000人朋友圈推广多少钱
  • 网站备案成功后可以改吗/磁力猫搜索引擎入口官网
  • 自媒体自助下单网站怎么做/2023年新闻小学生摘抄
  • 东莞网站制作网站设计/百度开户代理商
  • 微信做自己的网站/掌门一对一辅导官网
  • wordpress 角色管理/电影站的seo
  • 手机外贸网站建设/网站免费制作
  • 免费建设一个可以访问的网站/百度网址大全旧版本
  • 国外做文化的网站/优化提升
  • 用安卓手机做网站主机/个人如何做网络推广
  • 网站定位/云优化seo软件
  • 网站建设成功案例宣传/网店网络推广方案
  • 新加坡最近疫情/谷歌seo网站建设
  • 郑州建站费用/seo工程师
  • php在网站后台建设中的优势/做个网页价格多少
  • 网站居中css代码/销售方案怎么做
  • 无为住建设局网站/企业网站推广注意事项
  • wordpress如何关闭评论功能/合肥seo网络优化公司
  • 济南网站建设公司哪个好点呢/可以推广发广告的app
  • 河南省建设协会网站/公司网络推广方案
  • 外卖网站设计/百度站长平台链接提交
  • 缩我短链接生成器/东莞seo建站
  • VPS云服务器Linux系统备份策略与灾难恢复方案设计
  • spring boot开发中的资源处理等问题
  • Android JUnit 测试框架详解:从基础到高级实践
  • 超急评估:用提前计算分摊性能成本
  • 豆包1.6+PromptPilot实战:构建智能品牌评价情感分类系统的技术探索
  • 关于assert()函数,eval()函数,include