Если вкратце, то при создании экземпляра класса, вы его инициализируете (передаете аргументы в конструктор). Оператор new создает новый объект и this будет указывать на него. Соответственно this.string = string добавит свойство string в этот объект (экземпляр класса) со значением которое вы передали в конструктор или undefined. То же самое, но без "синтаксического сахара" классов:
function User(name, age) {
this.name = name;
this.age = age;
}
const olga = new User('Olga', 20);