此函数返回DS映射中存储的最后一个密钥。这不是您添加它们的顺序的最后一个密钥!DS映射不以线性形式存储,因为它使用DS列表,所以这只是查找计算机存储的最后一个密钥。如果您必须在DS映射中迭代查找某些内容,这可能会很有用,但应尽可能避免,因为它可能很慢。
请注意,如果给定的DS映射为空,此函数将返回undefined。
ds_map_find_last(id);
参数 | 类型 | 描述 |
---|---|---|
id | DS Map | 要使用的映射的ID。 |
var size = ds_map_size(inventory);
var key = ds_map_find_last(inventory);
for (var i = size; i > 0; i--;)
{
if (key != "gold")
{
key = ds_map_find_previous(inventory, key);
}
else break;
}
上述代码创建一些临时变量,然后获取DS映射大小,并找到计算机存储在地图中的最后一个密钥。然后,它使用for循环在DS映射中反复查找关键值"gold"。如果它找到了,它就会打破循环。