文章详情页
javascript - Leaking arguments
浏览:81日期:2023-03-31 15:59:32
问题描述
谁可以帮忙解释一哈 Leaking arguments 的概念
<script>Benchmark.prototype.setup = function() { function otherFunc(a, b) { return a + b; } function withArguments(x) { var a = arguments; return otherFunc.apply(x, Array.prototype.slice.call(a, 1)); } function withCopy(x) { var a = []; var i, len = arguments.length; for (i = 1; i < len; i += 1) { a[i - 1] = arguments[i]; } return otherFunc.apply(x, a); }
问题解答
回答1:传递arguments给任何方法被称为leaking arguments
不幸的是,传递arguments给任何参数,将导致Chrome和Node中使用的V8引擎跳过对其的优化,这也将使性能相当慢。
withArguments 不会被V8优化,withCopy 那种 建议线上环境使用,虽然啰嗦。
标签:
JavaScript
相关文章:
1. javascript - 关于使用axios和vue开发 手机端浏览器返回的时候读取缓存无法执行js和vue组件2. 初次配置Nginx反向代理,解决跨域时遇到了问题3. angular.js - angularJs 在谷歌浏览器上面 输入框输入中文不能响应,但英文和字母可以,其他浏览器不存在这个问题4. angular.js - jade模板引擎无法做单页模式,请教怎么做。5. 语法错误,意外’:’6. python - 通过电影名称获取视频地址7. javascript - mongoose在百度bae长连接中遇到的问题8. python - django里GROUP BY 如何写这样的mysql语句?9. 关于Java中的序列化与反序列化10. mysql - select查询多个纪录的条件怎么写
排行榜
