Prepare repository for merge
This commit is contained in:
25
javascript/snippets/call.md
Normal file
25
javascript/snippets/call.md
Normal file
@ -0,0 +1,25 @@
|
||||
---
|
||||
title: Call functions with context
|
||||
type: snippet
|
||||
tags: [function]
|
||||
cover: rabbit-call
|
||||
dateModified: 2021-06-13T13:50:25+03:00
|
||||
---
|
||||
|
||||
Given a key and a set of arguments, call them when given a context.
|
||||
|
||||
- Use a closure to call `key` with `args` for the given `context`.
|
||||
|
||||
```js
|
||||
const call = (key, ...args) => context => context[key](...args);
|
||||
```
|
||||
|
||||
```js
|
||||
Promise.resolve([1, 2, 3])
|
||||
.then(call('map', x => 2 * x))
|
||||
.then(console.log); // [ 2, 4, 6 ]
|
||||
const map = call.bind(null, 'map');
|
||||
Promise.resolve([1, 2, 3])
|
||||
.then(map(x => 2 * x))
|
||||
.then(console.log); // [ 2, 4, 6 ]
|
||||
```
|
||||
Reference in New Issue
Block a user