javascript - 企业 JavaScript 技巧

标签 javascript enterprise

<分区>

我目前正在撰写一篇文章,介绍在企业环境中使用 JavaScript 时的提示/技巧/最佳实践。 “企业”可能有点含糊,因此,出于本文的目的,我们将其定义为:在不一定连接到 Internet 的网络中支持多个基于 Web 的应用程序。

以下是我的一些想法,可以让您的创意源源不断:

  • 确保所有库都保存在一个可通过网络访问的中央位置,并且所有应用程序都引用这些库(而不是维护独立的副本)。
  • 按版本引用库,保证新版本不会破坏您的应用程序(没有 jquery-latest,请改用 jquery-#.#.#)。
  • 应用程序代码的正确命名空间

您可以提供哪些提示来帮助我?

最佳答案

在尽可能大的 DOM 大小上测试您的 javascript。 IE6/7/8 将根据执行的 VM 语句数而不是实际运行时间挂起。 Regex 和 regex jQuery 选择器特别糟糕。

少写。特别是 Javascript 变得非常难以管理和调试超过一定的大小集。将功能分解为不同的外部源文件会有所帮助,但始终要考虑一种更好的方法来完成您的工作(例如:jquery 插件。)

如果您一遍又一遍地编写通用模式,请停止。创建一个全局方法,或者如果该方法作用于 jQuery 选择器,请考虑编写您自己的 jQuery 插件。

不要让方法采用 DOM 对象或 ID。传入 jQuery 对象本身,并对其进行操作。通过这种方式,您不会对您的方法施加任意 DOM 约束(传入的对象甚至可能还不在 DOM 上,或者它可能没有 ID)。

不要修改原型(prototype)。这会破坏库/jQuery。如果需要,编写一个插件或新的数据类型。

不要修改库;这破坏了可升级性。您通常可以通过使用自己的插件包装 jQuery 库并转发/拦截调用来实现类似的效果,有点像 AOP。

不要在 DOM 仍在加载时执行代码。这会导致竞争条件,您只会在发生故障的机器上发现这种情况,即使这样它也不会保持一致。

不要使用 jQuery 设计页面样式。这很诱人,但随着 DOM 的增长,FOUC 会变得更糟。在您的服务器页面中构建 .first-child.last-child 等,而不是使用 jQuery 对其进行破解。

关于javascript - 企业 JavaScript 技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5212704/

相关文章:

javascript - 调用函数时如何传入参数名称?

ios - iOS Enterprise Build发行版

ios - 如何在 iPad OS 中从 Hockeyapp(或类似软件)下载企业签名应用程序?

.net - 不同系统的企业集成

ios - xcodebuild exportArchive : no applicable devices found

caching - 尝试通过 Magento 的整页缓存来打洞动态内容

javascript - 将控制台传输附加到 Winston 日志记录

javascript - 使用 NodeJS 进行 SNS 推送通知

带有固定字符串和一些由连字符分隔的变量的 JavaScript 正则表达式

javascript - iframe动态高度调整