javascript - 这些javascript代码行是否相同?

标签 javascript refactoring

我正在重构以前开发人员不再参与的项目中的一些 javascript 代码。

为了简明扼要,考虑 .js 文件中的这个简单代码

var a;
a = b;

这些是文件的前两行。基本上它只是创建一个 a 的变量来引用 b 的“全局文件”(在另一个 js 文件中定义的东西)值。

但是这不就和做一样吗:

var a = b;

重构这个简单的改动是否安全,或者是否存在一些不明显的隐患?


如果有什么不同的话,b 只是一个简单的对象,例如:

var b = { val1: '1', val2: '2' };

最佳答案

这两个语句是相同的。因此 a 只是全局 b 的别名。

虽然我们必须注意,html 页面上脚本引用的排列会导致一个非常普遍的问题。如果包含 b 声明的文件位于包含以下行的文件之后:

var a;
a = b;

然后浏览器将抛出一个错误。

注意:第二个示例在 JavaScript 文件大小方面更轻。从而减少 HTTP 请求负载,这不是很明显。

关于javascript - 这些javascript代码行是否相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31939974/

相关文章:

javascript - Facebook 简单登入

javascript - JavaScript 如何比较日期字符串?

java - 在 Java Eclipse 项目中查找未使用的类

java - Eclipse/Java 中的重构 : Apply "Extract Method" (Alt+Shift+M) afterwards

c++ - 删除 C++ 继承中虚拟类成员的代码重复

Ruby:改进复杂的初始化方法

javascript - 依赖注入(inject)非实例化对象的优点和缺点

javascript - 摆脱相对路径 react (删除 "../..")

javascript - Ajax 加载脚本上的 Jquery 变量作用域

javascript - 鼠标点击不起作用,鼠标移动可以