Разбираем цепочку прототипов JavaScript: паттерны наследования против создания объектов | MLOG | MLOG