function showFullName() {
alert( this.firstName + " " + this.lastName );
}
var user = {
firstName: "Василий",
lastName: "Петров"
};
showFullName.call(user) // "Василий Петров"
Когда вызвать эту функцию без call
, то она выведет undefined undefined
. Но почему? Если я передал ей аргумент user
, и ее this
становится user
. Почему без call
она не выводит firstName
и lastname
?
Когда вы передаете аргумент user, её this не становится user. У не появляется первый аргумент, равный user. А this зависит от контекста вызова (судя по всему в вашем случае это будет window). А вот используя call и bind, вы можете изменить её this
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
История такая: сайт из одной страницы, есть изначально скрытый (display:none) блок #ghost, в нем изначально пустой блок 'albom'
Доброе время суток!! Скажите, ребята, как можно демонстрировать вызов C# функции из JavaScript, чтобы можно было после выполнении получить результат...
Нужен ответ от знающих людей а еще лучше примеры, ссылки, статьи и прочее куда копать и где почитать