+ Можно создавать цепочки прототипов и тем самым множественное наследование.
+ Это быстро
- Сложность кода и его поддержки
- Сложность инициализации
- Трудно контролировать, что попадет в прототип, а что нет.
На самом деле на практике в больших проектах никто не использует цепочки прототипов и наследования, а делают все сугубо по принципам ООП.