这个JavaScript中的$ this是什么?

时间:2013-12-05 23:09:42

标签: javascript

我正在研究产生的JavaScript:

enter image description here

相关代码是

enter image description here

我的问题是,这指的是什么?只是关键字“这”我明白了,但是这个?似乎没有任何jQuery。

感谢任何照明。

4 个答案:

答案 0 :(得分:5)

它与Google "jstemplate"机制有关。

从该页面开始:

  

$ this:$ this指的是处理当前节点时使用的JsEvalContext数据对象。所以在上面的例子中,我们可以将$ this.end替换为end而不改变jscontent表达式的含义。在这种情况下,这似乎不是一件非常有用的事情,但在其他情况下,$ this是必要的。如果JsEvalContext包含诸如字符串或数字之类的值而不是具有命名属性的对象,则无法使用object-property表示法检索该值,因此我们需要$ this来访问该值。

答案 1 :(得分:1)

由于使用了Google JSTemplate API,它似乎以$为前缀。

此处提供更多信息:http://code.google.com/p/google-jstemplate/wiki/HowToUseJsTemplate

答案 2 :(得分:1)

这不是javascript,而是HTML。

您看到的是名为jsdisplay的自定义元素属性,其值为$this.something。它实际上做什么非常难以给出确切的答案,但正如其他人指出的那样,它可能在内部用于谷歌模板。

答案 3 :(得分:1)

Pointy is right for this specific case.

清除JavaScript中的$混淆:

在JavaScript中,变量名中的美元符号($)被视为a-z,A-Z和下划线(_)。

您正在查看的变量可能已被命名为其他任何内容。 $this不是特殊的JS关键字。如果他们愿意,jstemplate的开发人员可以将其命名为foo。或者像他们一样,类似于this,类似_thisself