【问题标题】:When did Firefox change its Function.prototype.toString() behaviour?Firefox 什么时候改变了它的 Function.prototype.toString() 行为?
【发布时间】:2013-12-15 08:31:07
【问题描述】:

如今,当您调用函数的 .toString() 时,浏览器会返回函数的原始声明。

但我记得 Firefox 曾经返回一个优化版本,例如。

function fn() {
    return 2+3;
}
fn.toString() // Used to give: function fn() {return 5;}

在哪些浏览器上可以安全使用此功能?

【问题讨论】:

  • 你试过哪个火狐版本?
  • FF 20 到 25 都表现出预期的行为。在此之前的某个时候,行为有所不同。

标签: javascript firefox tostring


【解决方案1】:

来自MDN

从 Gecko 17.0 (Firefox 17 / Thunderbird 17 / SeaMonkey 2.14) 开始,Function.prototype.toString() 已经通过保存函数的源代码来实现。反编译器已被删除,因此不再需要缩进参数。有关详细信息,请参阅错误 761723。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-14
    • 1970-01-01
    • 2020-11-28
    • 2016-08-10
    • 2013-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多