index.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. let tasks = {
  2. a: (value) => {
  3. alert(value);
  4. },
  5. cube: (a) => {
  6. console.log(a ** 3);
  7. },
  8. avg2: (a,b) => {
  9. console.log((a + b) / 2);
  10. },
  11. sum3: (a,b,c = 0) => {
  12. console.log(a + b + c);
  13. },
  14. intRandom: (min, max = min) => {
  15. console.log(Math.floor(Math.random() * (max - min + 1) + min));
  16. },
  17. greetAll: (...args) => {
  18. alert(`Hello ${args}`);
  19. },
  20. sum: (...a) => {
  21. let sum = 0;
  22. for (let arg in a) {
  23. sum += a[arg];
  24. }
  25. console.log(sum);
  26. },
  27. };
  28. let sample = prompt("Введите название задания")
  29. switch (sample){
  30. case "a":
  31. tasks.a("Привет!");
  32. break
  33. case "cube":
  34. tasks.cube(3);
  35. break
  36. case "avg2":
  37. tasks.avg2(1,2);
  38. tasks.avg2(10,5);
  39. break
  40. case "sum3":
  41. tasks.sum3(1,2,3);
  42. tasks.sum3(5,10,100500);
  43. tasks.sum3(5,10);
  44. break
  45. case "intRandom":
  46. tasks.intRandom(2, 15);
  47. tasks.intRandom(-1,-1);
  48. tasks.intRandom(0,1);
  49. tasks.intRandom(10);
  50. break
  51. case "greetAll":
  52. tasks.greetAll("Superman");
  53. tasks.greetAll("Superman", "SpiderMan");
  54. tasks.greetAll("Superman", "SpiderMan", "Captain Obvious");
  55. break
  56. case "sum":
  57. tasks.sum(1);
  58. tasks.sum(2);
  59. tasks.sum(10,20,40,100);
  60. break
  61. };
  62. // arr map
  63. let arr = ["1", {}, null, undefined, "500", 700];
  64. let newArr = arr.map((e) => typeof e === 'string' ? Number(e) : e);
  65. console.log(newArr);
  66. // array reduce
  67. let arr2 = ["0", 5, 3, "string", null];
  68. console.log(arr2.filter((n) => typeof n === 'number').reduce((a,b) => a * b));
  69. // object filter
  70. let phone = {
  71. brand: "meizu",
  72. model: "m2",
  73. ram: 2,
  74. color: "black",
  75. };
  76. filter = (obj, callback) => {
  77. for (let key in obj){
  78. callback(key, obj[key]) || delete obj[key];
  79. }
  80. console.log(obj);
  81. };
  82. filter(phone,(key,value) => key == "color" || value == 2);
  83. //object map
  84. map = (object, callback) => {
  85. for (let key in object) {
  86. let obj = callback(key, object[key])
  87. delete object[key];
  88. for (key in obj) {
  89. object[key] = obj[key]
  90. }
  91. }
  92. };
  93. let object = {
  94. name: 'Иван',
  95. age: '17'
  96. };
  97. map({name: "Иван", age: 17},function(key,value){
  98. var result = {};
  99. result[key+"_"] = value + "$";
  100. console.log(result);
  101. });