Нужно создать новый экземпляр в методе класса. В пхп делал просто new static
class List extends Map{
filter(opt){
let res = new self;//wrong
let res = new this.constructor;//правильно?
}
}
class List2 extends List{
getUniq(){
return filter({f: 3})
}
}
(new List2()).getUniq()