javascript - 我应该如何在 JS 中将方法标记为 "obsolete"?

标签 javascript deprecated deprecation-warning

我正在重构一个相当大的 JS 文件,其中包含许多不相关的方法,将它们根据用途重新组合在一起,并根据需要重命名其中一些方法(以防止误导名称)。

然而,大多数实际使用这段代码的网页都分布在不同的代码分支中,使我无法进行简单的查找和替换。我可以在所有不同的分支中执行此操作,但这需要同时在 30 多个分支中进行维护,或者一旦更改被合并到其他分支中(由我或其他团队成员),可能会忘记执行重命名。

如果这是 C#,我可以用 [Obsolete] 标记该方法,它会根据需要标记必要的更改,所以我正在寻找一些等效的东西。我仍然会通过将调用重定向到新方法来为旧界面提供一段时间的功能,但我想“强制”人们在出于其他原因在页面上工作时切换到新界面。

除了添加调试器;之外,还有其他方法可以做类似的事情吗? 声明和对每个方法的详细注释,以便它在开发时中断但在生产中不中断?

最佳答案

在过渡期间,您可以做几件事。

  1. 添加@deprecated JSDoc旗帜。
  2. 添加一条控制台警告消息,指示该函数已弃用。

示例:

/**
 * @deprecated Since version 1.0. Will be deleted in version 3.0. Use bar instead.
 */
function foo() {
  console.warn("Calling deprecated function!");
  bar();
}

关于javascript - 我应该如何在 JS 中将方法标记为 "obsolete"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19412660/

相关文章:

python warnings.filterwarnings 不会忽略来自 'import sklearn.ensemble' 的 DeprecationWarning

JavaScript数组长度为0

javascript - 将 UNIX 时间转换为 mm/dd/yy hh :mm (24 hour) in JavaScript

sockets - Sails.js 0.10-rc5中的实时模型事件

Android:相机 View - 当我不使用已弃用的方法时应用程序崩溃

javascript - AWS CDK 中 app.synth() 的用途是什么?

javascript - Javascript 中的替换函数(日期和时间)

php - 更新旧的 mySQL 脚本

java - 无法获取 Apache POI 来进行 Excel 阅读