2013-03-19 225 views
0

我在管理我们自己写的JS代码(不是J​​S库如jQuery)以下关注:最佳实践

是更好地相关的JavaScript只有HTML或把它与服务器端代码?意味着从服务器端代码返回JS代码还是创建单独的JS文件并将其从html代码或事件引用到html页面中是否更好?

在这里,我想提一个例子:

说我有2个服务器端页面,注册并登陆,并且说,我们正在使用jquery验证插件(使用脚本代码在HTML中引用),我们将用它来验证注册表和登录表单,在这种情况下,我们需要为登录页面写入验证JS语句$('.login_form').validate();,并为注册页面写入验证JS语句$('.register_form').validate();

所以我需要创建2个js文件(login.js,register.js)并在其js文件中添加每个语句,或者将代码写入html页面本身,或者从每个页面服务器返回js代码边码?

在这里我的困惑是,如果我将创建2个单独的文件,它将更好地维护JS代码,因为它是单独的,但对于性能和页面加载浏览器需要加载额外的js文件,只有一个另一方面,如果我想使用服务器端代码生成JS代码,那么维护JS代码将很难,但至于性能明智,我猜它更好。

那么考虑到可维护性和性能,你有什么建议?

回答

0

通常,你会将所有的javascript写入服务器端的不同文件,并在开发过程中将它们从页面链接起来,但是随后使用诸如uglifyjs之类的东西将它们全部压缩到一个文件中,该文件从HTML文件为您的生产环境。

这使您可以开发多个文件并保持良好的代码结构,但只允许浏览器下载一个文件并在生产环境中仅生成一个http请求。

之所以你不只是让你的服务器端PHP/Python/Java /直接将代码写入html是因为它阻止了浏览器缓存它。浏览器必须在网站的每个页面上下载该代码。如果它全部放在一个外部JavaScript文件中,它会更好,因为它设置了cache-control headers

这样浏览器将只下载您的脚本一次,并且只在用户在您的网站上看到的第一页上,然后在其他页面加载时从缓存中加载它。