Terdapat dua jenis penghias es6. Penghias hanya boleh digunakan untuk kelas dan kaedah kelas, jadi mereka boleh dibahagikan kepada: 1. Penghias kelas, digunakan untuk menghiasi keseluruhan kelas, sintaksnya ialah "@ nama fungsi" 2. Penghias kaedah kelas, digunakan untuk menghias kaedah kelas , sintaksnya ialah "@ nama kaedah nama fungsi".
Persekitaran pengendalian tutorial ini: sistem Windows 10, ECMAScript versi 6.0, komputer Dell G3.
Terdapat dua jenis penghias es6.
Penghias ialah sintaks yang berkaitan dengan kelas, digunakan untuk menganotasi atau mengubah suai kaedah dan sifat berkaitan kelas. Banyak bahasa berorientasikan objek mempunyai ciri ini. Secara amnya berkaitan dengan kelas, jangan gunakan kaedah biasa.
Penghias ialah fungsi, ditulis @ nama fungsi. Ia boleh diletakkan sebelum definisi kelas dan kaedah kelas. Penghias adalah untuk melaksanakan fungsi dan menambah beberapa syarat kawalan ke kelas atau kaedah atribut di bawah kelas.
Penghias hanya boleh digunakan untuk kelas dan kaedah kelas, bukan fungsi kerana fungsi angkat.
1. Penghias kelas
Penghias kelas digunakan untuk menghiasi keseluruhan kelas
Contohnya seperti berikut:
@decorateClass class Example { //... } function decorateClass(target) { target.isTestClass = true }
Seperti di atas Dalam kod, penghias @decorateClass mengubah suai gelagat keseluruhan kelas Contoh dan menambah atribut statik isTestClass ke kelas Contoh. Penghias ialah fungsi. Sasaran parameter dalam fungsi decorateClass ialah kelas Contoh itu sendiri, yang juga setara dengan pembina kelas Example.prototype.constructor.
2
Penghias kaedah kelas digunakan untuk menghias kaedah kelasContohnya adalah seperti berikut:class Example { @log instanceMethod() { } @log static staticMethod() { } } function log(target, methodName, descriptor) { const oldValue = descriptor.value; descriptor.value = function() { console.log(`Calling ${name} with`, arguments); return oldValue.apply(this, arguments); }; return descriptor; }
tutorial video javascript, bahagian hadapan web]
Atas ialah kandungan terperinci Terdapat beberapa jenis penghias dalam es6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!