maryluis 4 år sedan
förälder
incheckning
f8fd28153c
2 ändrade filer med 65 tillägg och 0 borttagningar
  1. 12 0
      homework12js/exersices.html
  2. 53 0
      homework12js/script.js

+ 12 - 0
homework12js/exersices.html

@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+   
+    <script src="./script.js"></script>
+    <title>Homework12</title>
+</head>
+<body>
+    
+</body>
+</html>

+ 53 - 0
homework12js/script.js

@@ -0,0 +1,53 @@
+function makeProfileTimer() {
+    let time1 = performance.now()
+    let timeInner = () => {
+        let time2 = performance.now()
+        return time2 - time1
+    }
+    return timeInner;
+}
+// var timer = makeProfileTimer()
+// alert('Замеряем время работы этого alert');  //некий код, время выполнения которого мы хотим измерить с высокой точностью
+// alert(timer()); //alert должен вывести время в микросекундах от выполнения makeProfileTimer до момента вызова timer(), 
+//                // т. е. измерить время выполнения alert
+
+function makeSaver(funk) {
+    let savedResult = funk()
+    let result = () => {
+        
+        return savedResult
+    }
+    return result
+}
+// var saver = makeSaver(Math.random) //создает функцию-хранилище результата переданной в качестве параметра функции (Math.random 
+//                                       // в примере). На этом этапе Math.random НЕ вызывается
+//     var value1 = saver()              //saver вызывает переданную в makeSaver функцию, запоминает результат и возвращает его
+//     var value2 = saver()              //saver в дальнейшем просто хранит результат функции, и более НЕ вызывает переданную 
+//                                       //в makeSaver функцию;
+//     value1 === value2                 // всегда true
+
+//     var saver2 = makeSaver(() => console.log('saved function called') || [null, undefined, false, '', 0, Math.random()][Math.ceil(Math.random()*6)])
+//     var value3 = saver2()
+//     var value4 = saver2()
+
+//     value3 === value4 // тоже должно быть true
+
+    function starter (number) {
+
+        setTimeout(() => {         
+            if(number > 0){
+                console.log(number)
+
+                number = number-1
+
+                return starter(number)
+
+            } else {
+
+                return console.log("done")
+            }
+        }, 1000)       
+
+
+    }
+    //starter(5)