首页 理论教育 ASP程序设计-复制、传递及比较数据

ASP程序设计-复制、传递及比较数据

时间:2023-11-20 理论教育 版权反馈
【摘要】:对象、数组及函数在大多数环境中都是按引用来复制、传递和比较的。复制项并不是一个真正的副本,而只是该数据的又一个引用。

ASP程序设计-复制、传递及比较数据

在JScript中,对数据的处理取决于该数据的类型。

1.按值和按引用

数值型数据和布尔型(true 和false)是按值来复制、传递和比较的。当按值复制或传递时,将在计算机内存中分配一块空间并将原值复制至其中,随后即使更改原来的值,也不会影响所复制的值(反过来也一样),因为这两个值是独立的实体。

对象、数组及函数在大多数环境中都是按引用来复制、传递和比较的。按引用复制或传递时,实际上是创建一个指向原始项的指针,然后就像拷贝一样来使用该指针。如果随后更改原始项,则同时更改原始项和复制项(反过来也一样)。复制项并不是一个真正的副本,而只是该数据的又一个引用。

字符串是按引用复制和传递的,但按值来比较。

2.传递参数给函数(www.xing528.com)

按值传递一个参数给函数就是制作该参数的一个独立副本,即一个只存在于该函数内的副本。另外,如果按引用传递一个参数且该函数更改了该参数的值,则这个值在脚本的任何位置都会被改变。

3.检验数据

按值进行检验时,是比较两个截然不同的项以查看它们是否相等,通常该比较是逐字节进行的。按引用进行检验时,看这两项是否指向同一个原始项的指针,若是,则比较结果相等;若不是,即使它们每个字节都含相同的值,比较结果也不相等。

按引用复制和传递字符串能节约内存,但由于字符串被创建后不能进行更改,因此字符串是按值进行比较的,这样可以检查两个字符串是否包含相同的内容,即使它们是完全独立产生的。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈