|
@@ -62,8 +62,10 @@
|
|
|
- Изучите встроенную функцию `bind`, и сделайте свою версию, которая позволит определить "значение по умолчанию" не только для первых параметров, но для любых других, например для *степени* в Math.pow:
|
|
|
|
|
|
```javascript
|
|
|
-var pow5 = myBind(Math.pow, Math, [undefined, 5]) // первый параметр - функция для биндинга значений по умолчанию, второй - this для этой функции, третий - массив, в котором undefined означает
|
|
|
-//параметры, которые должны передаваться при вызове, а другие значения являются значениями по умолчанию:
|
|
|
+var pow5 = myBind(Math.pow, Math, [undefined, 5]) // первый параметр - функция для биндинга значений по умолчанию,
|
|
|
+ // второй - this для этой функции, третий - массив, в котором undefined означает
|
|
|
+ // параметры, которые должны передаваться при вызове,
|
|
|
+ // а другие значения являются значениями по умолчанию:
|
|
|
pow5(2) // => 32, вызывает Math.pow(2,5), соотнесите с [undefined, 5]
|
|
|
|
|
|
var zeroPrompt = myBind(prompt, window, [undefined, "0"]) //аналогично, только теперь задается "0" как текст по умолчанию в prompt, а текст приглашения пользователя задается при вызове zeroPrompt
|