Tolong jelaskan mengenai Kerangka kerja JavaScript

Kerangka kerja JavaScript adalah kerangka kerja aplikasi yang ditulis dengan bahasa pemrograman JavaScript. Hal ini berbeda dengan pustaka JavaScript ditinjau dari segi perannya: Pustaka menyediakan fungsi-fungsi untuk dipanggil oleh kode induknya, sedangkan kerangka kerja mendefinisikan pondasi dari keseluruhan desain aplikasi. Pengembang tidak mengatur ataupun mengelola kerangka kerja; justru kerangka kerjalah yang membuat aturan dan struktur dasar aplikasi. Beberapa kerangka kerja JavaScript mengikuti paradigma model-view-controller yang dirancang untuk memisahkan aplikasi web menjadi 3 lapisan terpisah untuk meningkatkan kualitas kode dan pemeliharaan. Contohnya termasuk AngularJS, Ember.js, Meteor.js, dan Vue.js.