在 ES11 中,新增了一个方法 Array.prototype.at
,该方法可以根据索引返回数组中的元素。
语法
array.at(index);
其中 index
表示要返回的元素的索引。如果该索引不存在,则会返回 undefined
。
示例代码
const arr = ['foo', 'bar', 'baz']; console.log(arr.at(0)); // 'foo' console.log(arr.at(1)); // 'bar' console.log(arr.at(-1)); // 'baz' console.log(arr.at(3)); // undefined console.log(arr.at(-4)); // undefined
使用场景
在开发中,我们经常需要获取数组中的某个元素。通常我们使用下标来获取,例如 array[0]
。但是,如果该索引不存在,会返回 undefined
,而不会抛出异常。这可能会导致一些难以发现的错误。
在这种情况下,使用 Array.prototype.at
方法可以更好地处理这种情况。当索引不存在时,该方法会返回 undefined
,并且当我们使用负数索引时,也可以正常工作。
注意事项
需要注意的是,Array.prototype.at
方法只能在支持 ES11 的浏览器中使用。如果在不支持的浏览器中使用该方法,会抛出异常。需要使用 polyfill 或者转译工具将该方法转换为 ES5 或者 ES6 代码才能在较老的浏览器中使用。
总结
使用 Array.prototype.at
方法可以更好地处理获取数组元素的情况,特别是当索引不存在时。需要注意的是,该方法只能在支持 ES11 的浏览器中使用,需要在较老的浏览器中使用时做相应的转换处理。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/648b010e48841e98949626b8