ли как-то в классе B, наследующемся от A переопределить этот метод some() чтобы он стал some(val: number, other: string) например, т.е. добавить параметров ?
Это как то небезопасно
ну в Java например это норма
Что значит небезопасно. Небезопасно это когда вы одними классами все пишете (для других и для себя в дальнейшем)
Контракт на то и контракт, что ему нужно следовать. Пользователь класса B будет видеть только интерфейс A, а там нет 2го параметра.
Втф? Что небезопасного в классах?
При спреде обьекта - прототип теряется например)
А еще можно сделать так: Math.max = () => 1; Значит стандартные функции тоже опасны и лучше ими не пользоваться? Или все же опасно иметь дебилов в команде? ;)
Ну ваш пример это в другую степь вообще. Спред неочевидный. И главное тс не знает, что прототип теряется.
если спред не работает вместе с классами, почему вы решили, что это классы виноваты, а не спред? :)
Больше проблема, что тс знает об этой проблеме
Обсуждают сегодня