Zanjirlash
Yuqoriga va pastga tushishga imkon beradigan ladder
obyekti mavjud:
let ladder = { step: 0, up() { this.step++; }, down() { this.step--; }, showStep: function () { // joriy qadamni ko'rsatadi alert(this.step); }, };
Endi, biz ketma-ket bir nechta chaqiruvlarni amalga oshirishimiz kerak bo’lsa, buni quyidagicha qilishimiz mumkin:
ladder.up(); ladder.up(); ladder.down(); ladder.showStep(); // 1
Chaqiruvlarni zanjirlash uchun up
, down
va showStep
kodlarini o’zgartiring:
ladder.up().up().down().showStep(); // 1
Bunday yondashuv JavaScript kutubxonalarida keng qo’llaniladi.
Yechim, har bir chaqiruvdan obyektning o’zi qaytib keladi.
let ladder = { step: 0, up() { this.step++; return this; }, down() { this.step--; return this; }, showStep() { alert( this.step ); return this; } }; ladder.up().up().down().up().down().showStep(); // 1
Biz har bir satr uchun bitta chaqiruv yozishimiz mumkin. Uzoq zanjirlar uchun o’qilishni oson qiladi:
ladder.up().up().down().up().down().showStep(); // 1