- Declarative data binding
- Automatic UI refresh
- Can be added on top of your existing web application without requiring major architectural changes
- Very light weight library
- Assists in dependency tracking between HTML element and the underlying data
How KO works?
Instead of manually tracking, each element of the HTML page that rely on the updated data , it will automatically update the DOM when any changes to the data model occurs.
Knockout is not a replacement of jQuery. KO provides a complementary, high-level way to link a data model to a UI. It doesn’t attempt to provide animation, generic event handling, or AJAX functionality. Knockout is focused only on designing scalable and data-driven UI.
MVVM Design Pattern
Knockout uses a Model-View-ViewModel (MVVM) design pattern in which the model is your stored data, and the view is the visual representation of that data and ViewModel acts as the intermediary between the model and the view.