Duplicate()函数如何帮助保护数据完整性?

Moh*_*mad 6 coldfusion

  1. 我想了解在函数返回变量之前在变量上使用Duplicate()函数的目的.如果你能提供一个何时使用Duplicate()很重要或必要的例子,那就太好了.
  2. 它有其他用途吗?

我听过其他人在数据完整性的上下文中提到Duplicate(),我想更好地了解它是如何工作的以及何时使用它.

我经常看到这个:

<cfreturn Duplicate(local.myVariable)>
Run Code Online (Sandbox Code Playgroud)

当这也返回相同的结果:

<cfreturn local.myVariable>
Run Code Online (Sandbox Code Playgroud)

Ada*_*tle 9

虽然大多数变量都是通过 ColdFusion中的值传递的,但结构却不是 - 它们是通过引用传递的,如果不小心,可能会导致无意中覆盖值.

使用Duplicate()在内存中的另一个位置创建变量的相同副本,以便在通过引用传递时(请注意,您仍然通过引用传递,无法强制按值传递)对数据所做的任何更改调用者不会影响返回的来源.