я считаю, что на javascript это понятие нормально объяснить не получится
Нет, то что вы написали - не полиморфизм, это методы во встроенных объектах языка.
...
Если метод toString реализовать в своём классе, то это и будет использованием полиморфизма.
Опять же, это просто методы, так их никто не вызывает
в javascript все методы виртуальные
1) Реализация инкапсуляции, наследования и полиморфизма в каждом языке отличается. Бывает, что сильно. Если просят для Javascript, нужно объяснять на примере Javascript, даже если знатокам других языков такая реализация не нравится, потому что отличается от привычной им.
2) Термины вроде «виртуального метода» требуют пояснения. Я и написал про разные реализации методов, потому что не понял — а что вы имеет ввиду?
Ну и я не имел ни малейшей цели задеть вас и ваши знания. Всё ровно наоборот — я призываю немного отойти от переложения на Javascript примеров на C#, потому что мне кажется, что в Javascript некоторые вещи-таки можно объяснить просто.