Подтвердить что ты не робот

Как получить значение ключа a и 'a' в javascript

Как получить значение ключа a и 'a' в javascript?

var obj = {a:1,'a':2}
4b9b3361

Ответ 1

Первый ключ a будет перезаписан вторым 'a'.

obj.a вернет 2.

Если ваше ключевое имя является допустимым идентификатором Javascript или номером, Javascript позволит вам опустить кавычки в именах ключей. На практике, однако, лучше всего тренироваться, чтобы всегда использовать кавычки, чтобы избежать путаницы, как это, а также потому, что JSON требует их.

Ответ 2

Вы не можете - это один и тот же ключ, и инициализатор создаст объект с одним элементом "a" со значением "2". Попробуйте следующее:

var obj = {a:1,'a':2};

for ( var i in obj )
{
    alert(i + '=' +  obj[i] );
}

И вы просто получите ответ "a = 2".

Ответ 3

очевидно, 'a' - это односимвольная строка с строчным буквой a в качестве содержимого; но что вы ожидаете быть другим ключом? если вы хотите, чтобы это значение переменной с именем a, синтаксис фигурных скобок не поможет вам. В отличие от Python, этот синтаксис предполагает, что клавиши являются строками, а кавычки являются необязательными.

Вам нужно будет сделать что-то вроде этого:

var a = 'givenkey'
var obj = {}
obj[a] = 1
obj['a'] = 2

это создаст объект, эквивалентный:

var obj = {'givenkey':1, 'a':2}

Ответ 4

Если вы не уверены в ключе - используйте итерацию

for(var k in obj)
    alert(k + "=" + obj[k])

Когда вы знаете ключевое точное значение, используйте obj [k]

Ответ 5

Нет никакой разницы.

alert([
    obj.a,
    obj['a']
].join("\n")); // returns 2 in both cases