arrayGet

arrayGet

> 函数列表

返回数组 array 中位置 index 处的元素。如果索引超出了数组范围,则改为返回 defaultValue。

参数
返回值
TypeScript

在 JavaScript 中,越界的 a[index] 会得到 undefined:不会报错,但也没有备用值。写成 a[index] ?? defaut 即可实现 arrayGet 的效果——?? 只在值为 null 或 undefined 时生效,而 || 还会把合法的 0 或空字符串也替换掉。此外,a.at(index) 还接受从末尾倒数的负索引:a.at(-1) 是最后一个元素,而 a[-1] 永远是 undefined。

Python

在 Python 中,越界的 a[index] 会抛出 IndexError,而不是返回备用值;负索引则从末尾倒数:a[-1] 是最后一个元素,而不是错误。要重现 arrayGet(a, index, defaut),可以写成:a[index] if -len(a) <= index < len(a) else defaut。对于字典,m.get(key, defaut) 的作用正是如此。