【发布时间】:2018-12-22 06:13:19
【问题描述】:
来自 Terraform 文档:
element(list, index) - 从给定索引处的列表中返回单个元素。如果索引大于元素的数量,此函数将使用标准的 mod 算法进行换行。
使用 mod 包装的充分理由是什么?在我看来,这种行为可能是导致很多头痛的原因。
在我的脑海中,我只记得另外两种处理访问越界元素的方法:
- Python/Ruby:返回无/无
- Java/JS/Ruby:引发错误
我已经习惯了它们,以至于它们似乎很有意义,您要么一无所获,要么出现错误,但为什么您会期望在列表中获得 k mod n 元素?如果您是实施者,您将如何证明这种行为选择的合理性。
【问题讨论】:
标签: indexing indexoutofboundsexception terraform