up
This commit is contained in:
parent
5372c18379
commit
3defacc09d
314 changed files with 1761 additions and 1704 deletions
39
1-js/4-object-basics/04-object-methods/8-chain-calls/task.md
Normal file
39
1-js/4-object-basics/04-object-methods/8-chain-calls/task.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
importance: 2
|
||||
|
||||
---
|
||||
|
||||
# Chaining
|
||||
|
||||
There's a `ladder` object that allows to go up and down:
|
||||
|
||||
```js
|
||||
let ladder = {
|
||||
step: 0,
|
||||
up() {
|
||||
this.step++;
|
||||
},
|
||||
down() {
|
||||
this.step--;
|
||||
},
|
||||
showStep: function() { // shows the current step
|
||||
alert( this.step );
|
||||
}
|
||||
};
|
||||
```
|
||||
|
||||
Now, if we need to make several calls in sequence, can do it like this:
|
||||
|
||||
```js
|
||||
ladder.up();
|
||||
ladder.up();
|
||||
ladder.down();
|
||||
ladder.showStep(); // 1
|
||||
```
|
||||
|
||||
Modify the code of `up` and `down` to make the calls chainable, like this:
|
||||
|
||||
```js
|
||||
ladder.up().up().down().showStep(); // 1
|
||||
```
|
||||
|
||||
Such approach is widely used across Javascript libraries.
|
Loading…
Add table
Add a link
Reference in a new issue