88. 在JavaScript中实现负索引

JavaScript

中等难度  -通过 / -执行

Python支持负索引,但是JavaScript不支持。

请实现一个wrapper函数,使得JavaScript中的负索引变为可能。

const originalArr = [1,2,3]const arr = wrap(originalArr)arr[0] // 1arr[1] // 2arr[2] // 3arr[3] // undefinedarr[-1] // 3arr[-2] // 2arr[-3] // 1arr[-4] // undefined

arr执行的所有操作,都必须反映在原来的数组中,意思就是:

arr.push(4)arr[3] // 4originalArr[3] // 4arr.shift()arr[0] // 2originalArr[0] // 2arr.bfe = 'bfe'originalArr.bfe // 'bfe'arr[-1] = 5arr // [2,3,5]originalArr // [2,3,5]originalArr[2] = 6arr // [2,3,6]originalArr // [2,3,6]

始终思考更好的解决办法