maryluis il y a 4 ans
Parent
commit
45f04a63b1
1 fichiers modifiés avec 39 ajouts et 6 suppressions
  1. 39 6
      homework11js/script.js

+ 39 - 6
homework11js/script.js

@@ -1,3 +1,7 @@
+
+////Sort
+
+
 var persons = [
     {name: "Иван", age: 17},
     {name: "Мария", age: 35},
@@ -8,12 +12,10 @@ var persons = [
 
 
 function sort(arr, key, boolean = true) {
-
-
     let middleArr = [];
 
     for (let i = 0; i < arr.length; i++) {
-        middleArr.push(arr[i][key]);
+        middleArr.push(arr[i]);
     }
 
     for (let j = 0; j < middleArr.length; j++) {
@@ -21,7 +23,7 @@ function sort(arr, key, boolean = true) {
 
         for (let k = 1; k < middleArr.length;) {
 
-            if (middleArr[index] > middleArr[k]) {
+            if (middleArr[index][key] < middleArr[k][key]) {
                 [middleArr[index], middleArr[k]] = [middleArr[k], middleArr[index]]
                 k += 2
                 index += 1
@@ -34,7 +36,7 @@ function sort(arr, key, boolean = true) {
         }
 
     }
-    if (boolean == false) {
+    if (boolean == true) {
         middleArr.reverse()
     }
 
@@ -42,4 +44,35 @@ function sort(arr, key, boolean = true) {
 }
 
 console.log(sort(persons, "age"));
-console.log(sort(persons, "name", false))
+console.log(sort(persons, "name", false))
+
+
+
+///////Array map
+let array = ["1", {}, null, undefined, "500", 700]
+let newArray = array.map(function (num) {
+    if (!num === false && !isNaN(+num)) {
+        return +num
+    }
+
+    return num
+
+})
+//console.log(newArray)
+
+
+//Array reduce
+let reduceArray = ["0", 5, 3, "string", null]
+let result = reduceArray.reduce(function(a, b){
+    if(typeof a !== "number"){
+        a = b
+        return a
+    } else if 
+     (typeof b !== "number"){
+        return a
+    } else {
+        a = a*b
+    }
+    return a
+})
+console.log(result)