我正在研究产生的JavaScript:
相关代码是
我的问题是,这指的是什么?只是关键字“这”我明白了,但是这个?似乎没有任何jQuery。
感谢任何照明。
答案 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
,类似_this
或self
。