gpt4 book ai didi

javascript - Modernizr toString

转载 作者:搜寻专家 更新时间:2023-11-01 05:13:45 31 4
gpt4 key购买 nike

为什么 Modernizr执行以下操作:

toString = {}.toString,

最佳答案

它正在获取 Object.prototype.toString 方法的本地副本,这将允许它在脚本中进行小幅速度改进。这也允许它测试 toString 方法是否存在。

关于评论:

在查找时间(本地、全局、原型(prototype)链)和创建(闭包范围变量)中,每个名称解析都有成本,因此想象以下代码:

var values = // Create some object here.

for (var i = 0; i < count; i++) {
console.log(values[i].toString());
}

对于外观的每次迭代,我们都必须解析 values 变量,遍历原型(prototype)链以识别成员 toString,然后执行它。

以上面的例子为例,我们可以做以下事情:

var toString = {}.toString,
values = // Create some object here.

for (var i = 0; i < count; i++) {
console.log(toString.call(values[i]));
}

或者更进一步:

var toString = {}.toString,
log = console.log,
values = // Create some object here.

for (var i = 0; i < count; i++) {
log.call(console, toString.call(values[i]));
}

轻型应用程序不会真正从中获益太多,但更大的框架,如 jQuery 等,可以显着提高脚本性能。我相信 IE 就是这样一种浏览器,这些小的改进可以提供很大帮助。

关于javascript - Modernizr toString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12180299/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com