Объекты в JavaScript. Почему выводится 1, а не 0? var obj = {'1': 0, 1: 1, 0: 2}; alert(obj['1']); Почему выводиться значение свойства 1, а не свойства '1' ? Мы же обращаемся к свойству '1', а не 1.
В JavaScript все ключи объекта являются строками, даже если они кажутся числами. Поэтому при обращении к свойству '1' в объекте obj мы получаем значение, которое было установлено именно для ключа '1', а не для ключа 1. В данном случае, значение для ключа '1' равно 0, поэтому при вызове alert(obj['1']) выводится 0.
В JavaScript все ключи объекта являются строками, даже если они кажутся числами. Поэтому при обращении к свойству '1' в объекте obj мы получаем значение, которое было установлено именно для ключа '1', а не для ключа 1. В данном случае, значение для ключа '1' равно 0, поэтому при вызове alert(obj['1']) выводится 0.