array_equals

使用此函数,您可以检查两个数组是否相等 (等效或相同)。您给两个数组进行检查,如果它们相等 (相等或相同),函数将返回 true,如果它们不相等,则返回 false。请注意,这与使用 === 检查两个数组是否相同是 不相同的,这不会检查两个数组是否保持等效值,而只是查看数组是否引用相同的初始数组。例如:

var a = [1,2,3,4];
var b = [1,2,3,4];

if (a == b)
{
    show_debug_message( "This will never fire, as a and b do not reference the SAME array" );
}

if (array_equals(a, b))
{
    show_debug_message( "This will fire as both arrays contain similar values" );
}

请注意,有一些常数可能不等于它们自己,这会使此函数失败。下面是一个例子:

if (array_equals([NaN], [NaN]))
{
    show_debug_message( "This will never fire as NaN cannot be equal to itself" );
}

有关更多信息,请参见 相等表

 

语法:

array_equals(var1, var2);

参数类型描述
var1Array第一个数组
var2Array第二个数组

 

返回:

Boolean

 

例子:

if (!array_equals(inventory_array, item_array))
{
    var len = array_length(inventory_array);
    array_copy(item_array, 0, inventory_array, 0, len);
}

上面的代码将检查两个数组以查看它们是否保存等效的值,如果它们不保存,则代码将把数组 “inventory_array” 的全部内容复制到数组 “item_array” 中。