pocu46 vor 4 Jahren
Ursprung
Commit
496753ad50
3 geänderte Dateien mit 109 neuen und 3 gelöschten Zeilen
  1. 11 3
      08/script.js
  2. 11 0
      10/index.html
  3. 87 0
      10/script.js

+ 11 - 3
08/script.js

@@ -52,7 +52,7 @@ function sort(array, key, increase = true) {
 
 //-----------------------------------------------------------array map----------------------------------------------------------------------
 
-let arrayMap = ["1", {}, null, undefined, "500", 700]; 
+let arrayMap = ["1", {}, null, undefined, "500", 700];
 
 let arrayMap2 = arrayMap.map((item) => {
     if (typeof item == "string") return isNaN(parseInt(item, 10)) ? item : parseInt(item, 10);
@@ -100,7 +100,7 @@ let someObject = {
 function map(obj) {
     let temp = {};
     for (let i in obj) {
-        temp[i + '_'] = i + '$';   
+        temp[i + '_'] = i + '$';
     }
     return temp;
 }
@@ -164,4 +164,12 @@ function construct(obj) {
 
 document.body.append(construct(someTree));
 
-console.log(construct(someTree));
+console.log(construct(someTree));
+
+
+
+if () {
+    if () {
+        dbvbskdnvn
+    }
+}

+ 11 - 0
10/index.html

@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Document</title>
+</head>
+<body>
+    <script src="./script.js"></script>
+</body>
+</html>

+ 87 - 0
10/script.js

@@ -0,0 +1,87 @@
+// --------------------------------------------------makeProfileTimer-------------------------------------------------------------------
+
+// function makeProfileTimer() {
+//     let startTime = performance.now();
+//     return function () {
+//         return performance.now() - startTime;
+//     }
+// };
+
+// const timer = makeProfileTimer();
+
+// timer();
+// alert('Замеряем время работы этого alert');
+// alert(`Time for this alert running is: ${timer()}`);
+
+// --------------------------------------------------makeSaver-------------------------------------------------------------------
+
+// function makeSaver(someFunc) {
+//     let firstRun = true;
+//     let saveResult;
+//     return function() {
+//         if(firstRun) {
+//             saveResult = someFunc();
+//             firstRun = false;
+//             console.log(`Result is saved: ${saveResult}`);
+//         }
+//         return saveResult;
+//     }
+// }
+
+// var saver = makeSaver(Math.random); 
+
+// var value1 = saver();
+// var value2 = saver();
+// value1 === value2;
+
+// 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;
+
+// --------------------------------------------------Final Countdown-------------------------------------------------------------------
+
+// function finalCountdown(seconds) {
+//     console.log(seconds);
+//     if(seconds === 1) {
+//         // console.log('"поехали!"');                                    // If it is necessary to write it immediately
+//         // return;                                                       // Will write Gagarin's speech without delay
+//         return setTimeout(() => console.log('"поехали!"'), 1000);
+//     }
+//     return setTimeout(finalCountdown, 1000, seconds - 1);
+
+// }
+
+// finalCountdown(5);
+
+// --------------------------------------------------myBind-----------------------------------------------------------------------
+
+function myBind(func, myThis, myArray) {
+    return function (...arguments) {
+        let count = 0;
+        let tempArray = myArray.map((value) =>
+            (value === undefined ? arguments[count++] : value)
+        );
+
+        // let tempArray;
+        // tempArray = myArray.map((value) => {
+        //    ( value === undefined ? arguments[count++] : value)
+        // });
+        return func.call(myThis, ...tempArray);
+    }
+}
+
+var pow5 = myBind(Math.pow, Math, [undefined, 5])
+var cube = myBind(Math.pow, Math, [undefined, 3])
+
+pow5(2) // => 32, вызывает Math.pow(2,5), соотнесите с [undefined, 5]
+cube(3) // => 27
+
+var chessMin = myBind(Math.min, Math, [undefined, 4, undefined, 5, undefined, 8, undefined, 9])
+chessMin(-1, -5, 3, 15) // вызывает Math.min(-1, 4, -5, 5, 3, 8, 15, 9), результат -5
+
+var zeroPrompt = myBind(prompt, window, [undefined, "0"])
+var someNumber = zeroPrompt("Введите число") // вызывает prompt("Введите число","0")
+
+myBind((...params) => params.join(''), null, [undefined, 'b', undefined, undefined, 'e', 'f'])('a', 'c', 'd') === 'abcdef'