41s*_*1st 5 html javascript templating curly-braces dollar-sign
我目前正在阅读"Javascript Web Applications"(O'Reilly,Alex MacCaw),很早就有一段代码片段可能会在HTML文档中执行JS函数,但它没有被<script>标签包围:
// template.html
<div>
<script>
function doSomething(aParam) {
/* do stuff ... */
};
</script>
${ doSomething(this.someX) }
</div>
Run Code Online (Sandbox Code Playgroud)
请有人可以解释一下美元符号 - 大括号的符号吗?我目前正在学习JS而且我以前没有见过这个,所以我假设它是JS代码执行的简写(如果是这样,为什么没有终止的分号?),或者也许是一些专有的模板标记(Ruby) ?PHP?),还是完全不同的东西?
非常感谢.
UPDATE
后来在第5章(上述书中)中我们将介绍Javascript模板.作者似乎认为读者在阅读本书之前已经遇到过这种模板技术.正如Stackoverflow成员Esailija所指出的,这本书不是 Javascript的初学者指南; 我应该补充一点,我正在阅读这本书与"Javascript:The Good Parts"(O'Reilly,Douglas Crockford)等人并行阅读.
我有一半怀疑某种模板,但我没有考虑纯粹的JS模板.我过去使用过PHP和RoR框架,它们也使用类似的模板概念将模型数据注入到视图中.
最后一点:我阅读"Javascript Web应用程序"的原因是它讨论了JS领域中的模型 - 视图 - 控制器(MVC)模式.虽然它主张使用jQuery库(以及其他)来增强和加速开发,但它不是jQuery API书籍或者是另一个新的javascript包装器; 相反,本书利用这些库(在适当的情况下)来处理跨浏览器的JS不一致性,同时在创建"Web应用程序"时推动实际的JS最佳实践和模式.
它不应该是 javascript,而是一个模板文件。模板文件包含静态 html 和非常愚蠢的表示逻辑,通常采用伪语言,就像在本例中一样。它不应该包含任何真正的 javascript - 正如书中所说,这是你不应该做的事情。
然后这本书进入了一个重构版本,只有静态 html 和伪语言语句。请参阅JavaScript 模板。
这本书似乎是针对那些已经精通 javascript 并正在研究更好地构建 js 的人。
| 归档时间: |
|
| 查看次数: |
3927 次 |
| 最近记录: |