“this”在 jQuery 中意味着什么?
在 jQuery 中,“this”代表作为函数主题的 DOM 元素被召唤。这通常用于事件回调和作用于多个元素的函数。例如:
<code class="javascript">$("div").click(function() { this.style.color = "red"; });</code>
这会将单击的元素的前景色设置为红色。
一般在 JavaScript 中
在 JavaScript 中,“this " 指的是调用该函数的对象。这是由函数的调用方式决定的,而不是由函数的定义位置决定的。
<code class="javascript">var obj = { firstName: "Fred", foo: function() { alert(this.firstName); } }; obj.foo(); // alerts "Fred"</code>
在此示例中,当调用 foo 时,“this”被设置为 obj。但是,“this”的值可以是任何对象,包括全局对象(浏览器中的窗口)。
<code class="javascript">f(); // Probably alerts "undefined" //... Later var obj = { firstName: "Wilma" }; f = obj.foo; f(); // alerts "Wilma"</code>
在上面的示例中,f 是对 foo 函数的引用。当在没有对象属性的情况下调用 f 时,“this”默认为全局对象。
ES5 严格模式
在 ES5 严格模式中,“this”可以是任何值,包括非对象。如果“this”没有显式设置,则默认为未定义。
<code class="javascript">"use strict"; function test(msg) { console.log("[Strict] " + msg + "; typeof this = " + typeof this); } test(); // typeof this = undefined test.call(5); // typeof this = number</code>
在常规(非严格)模式下,所有这些调用都会返回 typeof this = object。
以上是'this”关键字在 jQuery 和 JavaScript 中的行为如何?的详细内容。更多信息请关注PHP中文网其他相关文章!