|
@@ -0,0 +1,92 @@
|
|
|
+### Таблица умножения
|
|
|
+
|
|
|
+ссылка
|
|
|
+
|
|
|
+### Подсветить ячейку
|
|
|
+
|
|
|
+ссылка
|
|
|
+
|
|
|
+### Подсветить строку и столбец
|
|
|
+
|
|
|
+ссылка
|
|
|
+
|
|
|
+### makeProfileTimer
|
|
|
+
|
|
|
+```javascript
|
|
|
+function doSomething(){
|
|
|
+ return 2 + 2;
|
|
|
+}
|
|
|
+var timer = makeProfileTimer(doSomething)
|
|
|
+
|
|
|
+function makeProfileTimer(doSomething){
|
|
|
+ var t1 = performance.now();
|
|
|
+ doSomething();
|
|
|
+ var t2 = performance.now();
|
|
|
+ return function(){
|
|
|
+ return t2 - t1;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+alert(timer());
|
|
|
+```
|
|
|
+
|
|
|
+### makeSaver
|
|
|
+
|
|
|
+```javascript
|
|
|
+function makeSaver(rand){
|
|
|
+ var res = rand();
|
|
|
+ return function(){
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+}
|
|
|
+var saver = makeSaver(Math.random);
|
|
|
+var value1 = saver();
|
|
|
+var value2 = saver();
|
|
|
+
|
|
|
+console.log(value1);
|
|
|
+console.log(value2);
|
|
|
+
|
|
|
+console.log(value1 === value2);
|
|
|
+```
|
|
|
+
|
|
|
+### Final Countdown
|
|
|
+
|
|
|
+```javascript
|
|
|
+var counter = (function(){
|
|
|
+ var i = 5;
|
|
|
+ return function(){
|
|
|
+
|
|
|
+ if(i === 0)
|
|
|
+ console.log("Поехали!");
|
|
|
+ else{
|
|
|
+ console.log(i--);
|
|
|
+ again();
|
|
|
+ }
|
|
|
+ }
|
|
|
+})();
|
|
|
+function again(){
|
|
|
+ setTimeout(counter, 1000);
|
|
|
+}
|
|
|
+again();
|
|
|
+```
|
|
|
+
|
|
|
+### myBind
|
|
|
+
|
|
|
+```javascript
|
|
|
+function myBind(func,object,arr){
|
|
|
+ return function(val, und){
|
|
|
+ if(und === arr[0])
|
|
|
+ return func(val,arr[1]);
|
|
|
+ }
|
|
|
+}
|
|
|
+var pow5 = myBind(Math.pow, Math, [undefined, 5]);
|
|
|
+var cube = myBind(Math.pow, Math, [undefined, 3]);
|
|
|
+console.log(pow5(2));
|
|
|
+console.log(cube(3));
|
|
|
+
|
|
|
+var zeroPrompt = myBind(prompt, window, [undefined, "0"]);
|
|
|
+
|
|
|
+var someNumber = zeroPrompt("Введите число");
|
|
|
+console.log(someNumber);
|
|
|
+```
|