В JavaScript вы можете определить такой объект:
var d = {1: 'test'};
и я могу установить ключ с индексом отрицательного числа следующим образом:
d[-1] = 'test2';
но если я попытаюсь использовать отрицательное число в литеральной инициализации, я получаю сообщение об ошибке:
var d = {1: 'test', -1: 'test2'};
Uncaught SyntaxError: Unexpected token -
Почему это? Почему я не могу использовать буквальное отрицательное число в качестве ключа к объекту? Есть ли способ обхода, который позволяет мне инициализировать его как литерал. Я знаю, что я мог бы использовать строки вместо этого, но я хочу использовать целые числа.