Смущает доступ к свойству объекта с помощью точечных или квадратных скобок
Просматривая некоторые онлайн-ресурсы, я натолкнулся на следующие примеры:
В этом случае к этим свойствам можно получить доступ через this.property
метод и this['property']
, но не может быть принят с помощью this[property]
function showFullName() {
alert( this.firstName + " " + this.lastName );
}
var user = {
firstName: "Alex",
lastName: "Graves"
};
showFullName.call(user)
В следующем примере доступ к свойствам с помощью this.property
а также this['property']
приводит к undefined
,
var user = {
firstName: "Alex",
surname: "Graves",
secondSurname: "Martinez"
};
function showFullName(firstPart, lastPart) {
alert( this[firstPart] + " " + this[lastPart] );
}
showFullName.call(user, 'firstName', 'secondSurname')
Не могли бы вы немного уточнить поведение точечных и квадратных скобок?