The comparison of the characteristics of the standard has four kinds, namely:
- UI bindings (UI Bindings)
- Composite view (composed views)
- Web presentation layer (Web Presentation layer)
- Good collaboration with other frameworks (Plays nicely with Others)
- backbone.js--Advantages: Strong community, strong momentum; disadvantage: abstract weak, many functions need to increase.
- sproutcore--Advantages: Support for bindings, reliable communities, lots of features, Cons: Over-spec, difficult to decouple from unwanted features.
- sammy.js--Advantages: Easy to learn, easier to integrate with existing service-side applications, disadvantages: too simple to apply to large applications.
- spine.js--Advantages: Lightweight, documentation is complete; disadvantage: Its core concept "Spine" is the asynchronous user interface, which means that the ideal user interface will never clog, and this foundation is flawed.
- knockout.js--Advantages: Support for bindings, complete documentation and tutorials; Cons: Poor binding syntax, lack of a unified view component hierarchy.
- GWT (Google Web Toolkit)-Advantages: A comprehensive framework, a good community, a reliable Java-based component inheritance model, a disadvantage: you may not be able to withstand the test of time, in addition, Java on the client's abstraction is somewhat clumsy.
- Google closure--Benefits: A good component-based UI composition system. Disadvantage: Lack of UI binding support.
- ember.js--advantages: A rich template system with composite views and UI bindings; Cons: Relatively new, incomplete documentation.
- angular.js--Advantages: The template range and controller design are well considered, have a dependency injection system, support rich UI binding syntax. Disadvantage: The code is not strong in modularity, and the view is not modular enough.
- batman.js--Advantages: The code is clear, binding, persistent method is simple; disadvantage: A single controller is used.