在浏览器中实现自定义脚本类型

Implementing custom script types in the browser?

本文关键字:脚本 类型 自定义 实现 浏览器      更新时间:2023-09-26

当一些自定义语言的脚本出现在网页上时,这些脚本是如何执行的?

<script type='text/mighty-mouse'>
 // logic expressed in mighty mouse language
</script>

我猜应该是这样的:

  1. Mighty Mouse解释器在加载页面查询Mighty - Mouse脚本。
  2. 解释器使用标准词法分析/编译策略解析脚本,并将其编译为JavaScript。
  3. 生成的JavaScript被动态注入到页面上的标准脚本标签中,甚至可能消除原始的might -mouse标签。

(我意识到我们可以在运行前进行转编译,以避免加载解释器。)

这是一个准确和完整的理解吗?

据我所知有两种方法。要么是浏览器插件,要么更可能是用JavaScript编写的解释器。它实际上扫描DOM以寻找正确的类型并解释内容。

CoffeeScript就是一个很好的例子。