0

我正在考虑正确的编程方法:

在编写 JavaScript 代码时,我从函数和对象中引用了许多动态创建的全局对象和变量,尽管我没有将它们作为函数参数传递。这样,我失去了函数的多功能性和独立性,因为函数和对象依赖于我的应用程序中的另一个全局对象。我知道这个事实,但是,我的对象/函数通常需要许多变量才能使用。

您是否建议我是否应该始终努力将所有变量和对象作为函数参数传递?这样就可以清楚地知道函数需要哪些变量,如果我提供正确的参数,函数将始终有效

或者,我不需要那么严格,只要我的函数/对象工作,尽管它们引用全局对象,我不需要再为这个问题烦恼吗?

我需要知道正确的编程方法,所以我不会习惯错误的事情。

4

1 回答 1

1

是的,您想尽可能少地使用全局变量。如果结果你发现你向每个函数传递了很多参数,那么你应该查看这些参数并询问它们有什么共同点。很多时候,添加额外的对象会有所帮助。您可以将参数组合到对象的实例变量中并传递一个对象。然后,您无需提取实例变量,而是将操作委托给该对象。

例如,假设您有以下代码:

    drawLine(fromX, fromY, toX, toY, thickness, color, canvas)

您可以创建一个点来保存 x,y 值和一个图形上下文来保存厚度、颜色和画布。结果调用变为:

    drawLine(from, to, context)

您减少了参数的数量并创建了包含常用操作的可重用对象。

于 2012-05-05T02:51:22.977 回答