gpt4 book ai didi

javascript - Douglas Crockford 的 Strict Mode Example 是不是错了?

转载 作者:数据小太阳 更新时间:2023-10-29 04:33:33 24 4
gpt4 key购买 nike

我敢肯定他不是。我只是不明白他的演讲中的一个例子

http://youtu.be/UTEqr0IlFKY?t=44m

function in_strict_mode() {
return (function () {
return !this;
}());
}

这不也一样吗?

function in_strict_mode() {
return !this;
}

如果 is_strict_mode()method 那么我同意,因为 this 然后会指向包含方法的对象,例如

my_object.in_strict_mode = function() {
return (function () {
return !this;
}());
}

但为什么他在他的示例中这样做(这是简单的函数,而不是对象的方法)?

最佳答案

this 的值取决于函数的调用方式。 (在 Crockford 的代码中是“anonymous”,但在你的代码中是“only”)函数通过查看 this 的值来确定是否开启严格模式,并要求在没有明确上下文的情况下调用该函数才能工作.

您如何调用 Crockford 的 in_strict_mode 函数并不重要,因为它使用不同的函数来实际获取它关心的数据。

如何调用 in_strict_mode 函数很重要,因为它使用自身来获取数据。

Crockford 版本旨在提供正确的结果,即使您将它用作对象的方法或使用 apply(something)call(something).

关于javascript - Douglas Crockford 的 Strict Mode Example 是不是错了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27886213/

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