Пожалуйста, обратитесь к приведенному ниже коду, когда я "прокомментирую" в любой из прокомментированных строк, это вызывает ошибку (в IE) "::" ожидается ". Итак, тогда мое заключение правильное, что эта невозможность предоставить ссылку на значение объекта, как ключ объекта в строковом литерале; это строго проблема интерпретатора/синтаксического анализа? Является ли это кандидатом на ужасную (или, по крайней мере," плохую ")" часть "Javascript, в отличие от" хороших частей" Крокфорда?
<script>
var keys = {'ONE': 'one'};
//causes error:
//var obj1 = {keys.ONE: 'value1'};
//var obj1 = {keys['ONE']: 'value1'};
//works
var obj1 = {};
obj1[keys.ONE] = 'value1';
//also works
var key_one = keys.ONE;
var obj2 = {key_one: 'value1'};
</script>