当我们不需要它们的所有功能时,为什么要下载整个JavaScript框架?我们能建议什么?(JavaScript的)

Art*_*ald 2 javascript performance

我喜欢Google Web Tookit API方法.它在幕后使用Java语言,只编译目标浏览器所需的JavaScript代码.有些开发人员希望在纯JavaScript语言中使用该功能.

Anwser:为了满足这一要求,我们可以提出什么建议?

我建议使用JavaScript注释(作为标志)作为某种编译器(如Yahoo JavaScript编译器)分析我们的应用程序JavaScript代码并仅生成所需的JavaScript框架代码的方式.

示例:假设的JavaScript框架(JQuery,Mootools,Prototype等)代码

// depends function say
funcion sayHello() {
    // some code   
}

function say() {
   // some code
}

// more and more no needed Javascript framework functions in our app
Run Code Online (Sandbox Code Playgroud)

因此,当我的应用程序使用函数sayHello时,只有sayHello函数及其依赖项将通过JavaScript注释进行过滤,没有别的.因此,通过仅使用所需的JavaScript Framework代码,我们的应用程序将更轻松.

而你:你有什么建议?

Wal*_*sby 9

如果框架的JavaScript代码作为可缓存文件提供,则可以消除请求整个框架(例如jQuery.js)的下载成本,但如果您即时生成框架代码(如上所述),那么利用缓存会变得更加困难.

除此之外,定义整个框架的内存成本可能不太可能成问题(假设框架是合理编写的).

因此,通常情况下,拉入整个框架很简单,运行良好,不需要特定的服务器端基础结构(如GWT).

  • 缓存是王道,就像在生活中一样 (3认同)

Nos*_*dna 5

有一种情况对我有用 - 一款适用于iPhone的jQuery.对于jQuery中的所有非Safari行李来说,放慢速度是没有任何意义的.

但是对于典型的桌面,如果从Google API获得JS库,它可能已经缓存并准备好了.