JSFiddle - React, Tailwind, and code Playground

JavaScript

function this1() {
    var vasya = { name:'Вася' }
    var petya = { name:'Петя' }

    sayName  = function() {
        alert("Я - "+ (this.name ? this.name : 'безымянный') )
    }

    vasya.sayName = sayName
    
    // один и тот же метод в двух объектах
    petya.sayName = vasya.sayName
    
    // тут - this будет petya
    petya.sayName()  // Я - Петя
    
    // тут - this будет vasya
    vasya.sayName()  // Я - Вася
    
    // а тут - вызывается метод глобального объекта window, у которого нет имени
    sayName() // Я - безымянный
}