The main thing to remember when looking at frameworks of any description, not just JS, is that more often than not they are based around a core concept, whether unique or not, and its that core concept (along with how well its executed) that is of interest in terms of innovation. All the rest is semantics. If everyone had stopped at jQuery and never deviated from this common core, would React ever have been conceived? Now obviously at some point some bright developer may have come up with the concept, but without the support of the group at large and the projects surrounding it, it would never have come to light in the way it has.
The fact is, that as a developer, I currently have a handful of concepts that I can choose from depending on a given project's requirements. Sometimes it's some simple interactivity and jQuery will suffice. Sometimes it's more complex and tools like Backbone become relevant to assist in organisation of code and separation of concerns. And sometimes you need a whole new concept, like React.
Also remember that the "competition" only exists in a few forms. Popularity is obviously one, and its important because the more popular a framework is the more it can evolve with the help of its users and contributors. But that's only one factor. Competition also comes when there is dissatisfaction with the direction of a project or new yet incompatible ideas are formed (either spawning forks or alternatives), which sometimes feeds back into the project in hugely productive ways - like when io.js forked from node with a shift in paradigm that massively increased performance, and those changes were later incorporated back into the project. However competition is manifested, however, everyone benefits as projects borrow ideas from each other.
In any case, there's no cause to be overwhelmed, because there are only so many core concepts out there to choose from. The rest is project suitability and personal preference.