我应该如何包含和引用我的JavaScript文件

我应该如何包含和引用我的JavaScript文件,javascript,layout,gmail,Javascript,Layout,Gmail,目前,我包含了大约8个JavaScript文件,其中包含各种类和函数。我忍不住觉得我做错了。我是否应该只包含一些基本的瘦客户机JavaScript,然后在其他临时文件中获取函数?我可以从用户浏览器中当前的JavaScript代码引用服务器上的JavaScript代码吗 谷歌的日历或邮件显然没有下载他们需要操作的所有JavaScript,那么他们如何从服务器上引用他们需要的文件呢?将大部分文件保留在服务器上还有一个好处,即当我更新功能或修复bug时,不需要让用户刷新浏览器或重新登录。其他人如何让用

目前,我包含了大约8个JavaScript文件,其中包含各种类和函数。我忍不住觉得我做错了。我是否应该只包含一些基本的瘦客户机JavaScript,然后在其他临时文件中获取函数?我可以从用户浏览器中当前的JavaScript代码引用服务器上的JavaScript代码吗

谷歌的日历或邮件显然没有下载他们需要操作的所有JavaScript,那么他们如何从服务器上引用他们需要的文件呢?将大部分文件保留在服务器上还有一个好处,即当我更新功能或修复bug时,不需要让用户刷新浏览器或重新登录。其他人如何让用户更新他们的web应用程序


另外,有人对如何保护我的脚本有什么建议吗?

如果您有许多脚本文件,但它们都有相同的功能,然后将它们连接并压缩到一个文件中

当您为一个文件提供服务时,通过向其添加查询字符串(随机或文件版本),帮助客户知道不要缓存它(如果它经常更改)



您可以使用一个简单的shell或批处理文件在构建时处理多个JS文件。它将连接文件,然后根据您是在发布还是调试中,使用JavaScript优化器压缩大文件。

“另外,有人对如何保护我的脚本有什么建议吗?”-这听起来像是一个单独的问题。使用服务器端身份验证的异步javascript加载-应该让您开始了。使用脚本加载程序有一些折衷。如果压缩脚本,可以更快地将它们合并到一个文件中,并一次加载所有内容。但是,在某些情况下,单独的文件可能更好。查看或“谷歌的日历或邮件显然没有下载操作所需的所有JavaScript”-他们没有?JavaScript在浏览器中运行(在这个上下文中,让我们忽略node.js),因此显然它必须在某个时候下载。
<script type="text/javascript" src="file.js?<%=DateTime.Now.Ticks.ToString() %>"></script>

<script type="text/javascript" src="file.js?<%=Globals.JS_COMPILED_VERSION %>"></script>