Jika ia dibahagikan daripada seni bina dalaman dan konsep, rangka kerja JavaScript semasa boleh dibahagikan kepada 5 kategori.
Jenis 1
Kemunculan perpustakaan atau rangka kerja kelas berorientasikan ruang nama, seperti mencipta tatasusunan menggunakan Array(), menjana objek menggunakan Object() baharu, adalah gaya Java sepenuhnya, jadi kita boleh menggunakan objek tertentu sebagai Root, sentiasa tambahkan atribut objek atau atribut objek sekunder padanya untuk menyusun kod, disusun seperti piramid. Kerja-kerja perwakilan termasuk YUI awal dan EXT.
Jenis 2
Apa yang muncul ialah rangka kerja berorientasikan kilang kelas, seperti Prototaip yang terkenal, serta mootools, Base2 dan Ten. Pada asasnya, kecuali ruang nama yang paling asas, modul lain ialah objek kelas yang diperoleh daripada kilang kelas. Terutama mootools 1.3, semua jenis dikapsulkan ke dalam jenis Jenis.
Jenis 3
ialah rangka kerja berorientasikan pemilih yang diwakili oleh jQuery Keseluruhan rangka kerja atau badan perpustakaan ialah objek tatasusunan khas, yang memudahkan operasi terpusat - kerana pemilih biasanya memilih nod elemen N sekali gus, jadi Mereka ditangani bersama. jQuery mengandungi beberapa perkara hebat: teknologi "tiada instantiasi baharu", $(expr) mengembalikan contoh tanpa memperbaharuinya secara eksplisit, mula-mula menetapkan semua peraturan akses: sistem caching data. Dengan cara ini, peristiwa nod boleh disalin. Selain itu, IIFE (Immediately-Invoked Function Expression) turut ditemui.
Jenis 4
ialah rangka kerja yang disambungkan secara bersiri dengan pemuat Semuanya mempunyai berbilang fail JavaScript dan setiap fail JavaScript ditulis mengikut peraturan tetap. Yang paling terkenal ialah AMD. Modulariti ialah tanda perindustrian JavaScript. Yang pertama daripada banyak "peraturan emas" yang disenaraikan dalam "Seni Pengaturcaraan Unix" ialah modul, yang mengatakan - "Satu-satunya cara untuk menulis perisian yang kompleks tanpa gagal ialah menggabungkan beberapa modul mudah dengan antara muka yang jelas, supaya Pertama, kebanyakan masalah hanya akan muncul secara tempatan, jadi masih ada harapan untuk memperbaiki atau mengoptimumkan kawasan tempatan tanpa menjejaskan seluruh badan." Banyak rangka kerja perusahaan dalaman pada asasnya menggunakan seni bina ini, seperti Dojo, YUI, kissy, qwrap dan mass, dsb.
Jenis 5
Ia ialah rangka kerja MV* dengan seni bina berlapis yang jelas. Yang pertama ialah JavaScript MVC (kini dipanggil CanJS), backbonejs dan spinejs, dan kemudian rangka kerja MVVM yang lebih sejajar dengan front-end sebenar, seperti kalah mati, bara, sudut, avalon dan winjs. Dalam rangka kerja MVVM, operasi DOM asal digantikan dengan pengikatan deklaratif, yang dikendalikan oleh rangka kerja itu sendiri dan pengguna hanya perlu memfokuskan pada kod perniagaan.
Berikut adalah kesimpulan tentang ciri rangka kerja.
Pengendalian jenis data asas adalah asas Contohnya, jQuery menyediakan kaedah seperti trim, camelCase, setiap satu dan peta Untuk rangka kerja yang mengganggu seperti Prototype.js, kaedah seperti camelize ditambahkan pada prototaip.
Penentuan jenis adalah penting, dan bentuk biasa ialah siri isXXX.
Pemilih, domReady dan Ajax ialah ciri standard rangka kerja moden.
Pengendalian DOM ialah keutamaan teratas, operasi gaya dan operasi atribut juga tergolong dalam skopnya sama ada ia dibahagikan bergantung pada skala rangka kerja.
hingus pelayar sudah lapuk, pengesan ciri sedang digunakan. Walau bagaimanapun, pengesanan ciri masih mempunyai had Jika anda menyasarkan pepijat pemaparan, dasar keselamatan atau pembetulan pepijat tertentu dalam versi penyemak imbas tertentu, anda masih perlu menggunakan menghidu penyemak imbas. Tetapi ia harus berdiri sendiri sebagai modul atau pemalam, mengalih keluar teras rangka kerja.
Kini, sistem acara arus perdana menyokong proksi acara.
Caching dan pemprosesan data Pada masa ini, penyemak imbas turut menyediakan atribut data-* untuk tujuan ini, tetapi ia tidak begitu mudah digunakan dan memerlukan pengkapsulan lanjut oleh rangka kerja.
Enjin animasi, melainkan rangka kerja anda disokong oleh rangka kerja animasi peringkat teratas seperti script.aculo.us seperti Prototype.js, sebaiknya anda menambahkannya juga.
Pembangunan mudah dan kebolehskalaan pemalam.
Sediakan penyelesaian seperti Ditangguh untuk mengendalikan pemprosesan tak segerak.
Walaupun kilang kelas tidak disediakan secara khusus, perlu ada kaedah yang dinamakan extend atau mixin untuk memanjangkan objek. Walaupun jQuery tidak mempunyai kilang kelas, ia perlu menambah satu dalam UI jQuery, yang menunjukkan kepentingannya.
Sejak jQuery keluar dengan kaedah yang dipanggil noConflict, rangka kerja yang muncul telah menggunakan kaedah ini untuk bertahan dalam jurang yang sempit.
Banyak rangka kerja mementingkan operasi kuki.