Negative array index support
array[-1]
using ES6 Proxy
JavaScript doesn't natively support the use of a negative index to get items backwards from the end, but with ES6 Proxy it's possible. Take a look at the source to see how simple it is to implement and read this short article about it.
Proxies are objects for which the programmer has to define the semantics in JavaScript. The default object semantics are implemented in the JavaScript engine, often written in lower-level languages like C++. Proxies let the programmer define most of the behavior of an object in JavaScript. They are said to provide a meta-programming API.
$ npm install --save negative-array
var negativeArray = require('negative-array');
// adds negative array index support to any passed array
var unicorn = negativeArray(['pony', 'cake', 'rainbow']);
// get the last item by using an negative index
console.log(unicorn[-1]);
//=> rainbow
// OMG, YES!
This should go without saying; don't use in production.
- Node >=0.8.0:
node --harmony --harmony-proxies
- Chrome - with the this flag enabled
chrome://flags/#enable-javascript-harmony
(copy/paste into address-bar) - Firefox >=12
MIT © Sindre Sorhus