Corak strategi mentakrifkan keluarga algoritma, merangkum setiap satu dan menjadikannya boleh ditukar ganti.
Dalam contoh ini, Kami mempunyai satu set diskaun yang boleh digunakan pada troli beli-belah. Kita boleh lulus fungsi yang akan kita gunakan kepada pembina dan, dengan cara itu, menukar jumlah diskaun.
class ShoppingCart { constructor(discount) { this.discount = discount; this.amount = 0; } checkout() { return this.discount(this.amount); } setAmount(amount) { this.amount = amount; } } function guest(amount) { return amount; } function regular(amount) { return amount * 0.9; } function premium(amount) { return amount * 0.8; } export { ShoppingCart, guest, regular, premium };
Contoh lengkap ada di sini ? https://stackblitz.com/edit/vitejs-vite-tygwh3?file=strategy.js
Kesimpulan
Gunakan corak ini apabila anda mempunyai banyak kelas serupa yang hanya berbeza dalam cara mereka melaksanakan beberapa gelagat.
Saya harap anda dapati ia membantu. Terima kasih kerana membaca. ?
Jom berhubung! Anda boleh menemui saya di:
Atas ialah kandungan terperinci Corak Reka Bentuk JavaScript - Tingkah Laku - Strategi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!