Jquery *编译器*可能吗?
|
当我看到这个问题时,我认为如果可以编写jQuery编译器会有所帮助。现在,通过编译器,我的意思是接受jQuery代码并输出最终执行的原始javascript代码的东西。
这就是我设想的jQuery代码执行块的方式:
调用jQuery函数并将参数传递给它
该函数调用原始javascript函数,并将接收到的参数传递给它
新调用的功能执行预期的操作
我知道这是一个非常简化的模型,它可能要复杂得多,但是我认为,通过调用不同的原始js函数并每次都馈入全部或部分参数/,重复步骤2和3可以简化复杂性以前的结果。
如果我们订阅该模型,那么我们可能会想出使jQuery函数执行双重职责的方法:
他们已经做了什么
以ѭ0的形式记录他们所做的事情
我是否做出了一些错误的假设,使之不可能呢?
有任何想法Firebug的探查器如何尝试获取函数名称?可以在这里使用吗?
编辑
我当时在想用输入/输出制作一个黑匣子:
normal jquery code
→[BB]→code you\'d write if you used no library
我称其为编译器,因为您先编译一次,然后再使用生成的代码。
我认为它至少可以用于教育用途,也可以用于其他用途。
人们说这将花费少量的代码并输出大量的代码。据我所知,这并没有违背预期的目的
人们说我会在页面渲染中添加多余的,不必要的步骤,考虑到最终只使用最终的代码(并且可能仅用于研究),这样做是不正确的。
人们说javascript函数和jquery函数之间没有一对一的关系,并且暗示这样的转换器太复杂了,可能不值得付出努力。我现在同意这一点。
谢谢你们!
没有找到相关结果
已邀请:
4 个回复
黎喊病
它将被转换为
我认为这是可能的,但问题是jQuery函数返回jQuery对象,因此在上面的示例中,第一个myId将是jQuery对象,第二个将是节点对象(我认为),这会影响需要稍后在编译后的代码中使用它。特别是如果将它们拴在一起 其次,您必须确保转换实际上具有性能优势。 但是,如果您了解所有这些情况并且可以相应地计划代码,我认为这将是可能的
笛驮型迸
磁辫覆氓
貉骂
→
实际上,这是C ++编译器可以优化性能的方法,但是Javascript不是C ++,因此不适用于此处。 我看不出这有什么用。 jQuery的要点是通过提供一致的接口(例如
函数)来简化Javascript开发。通过执行此“内联”过程,您将生成更加难以阅读和维护的代码。 为什么还要增加一个步骤?为什么不仅仅将应用程序的javascript代码和jQuery库交付给浏览器?为什么要添加一个额外的步骤,使用额外的工具将Javascript转换为不会提供任何实质性额外好处的Javascript?