JS для продвинутых

Перейти вниз

JS для продвинутых

Сообщение автор raingo в Сб Янв 06, 2018 3:14 am

JS нереально сложный язык. Чем больше погружаюсь, тем больше офигиваю от его мудренности. И тем больше влюбляюсь.

Например, вы знали, что в es5 можно вызывать методы суперкласса?
Код:
Child.superclass = Parent.prototype;
Это одна строчка, но она взрывает мозг. Блеять, она взорвала мне мозг. Очень давно не юзал си и си-шарп. Но в java вызов супер класса нормальная практика. К сожалению, в ES6 так же придумали отдельную функцию - super(). Что портит веселье.

Предлагаю делиться сниппетами из js, указывая версию (es5 и ниже, es6 и выше).

ES5. Вот мой код бесконечного цикла с удобной возможностью дальнейшей манипуляции:
Код:
//бесконечный цикл
var xy = 0;
var loop = function  (callback){
    xy++;
    console.log(xy);

    callback(callback);
};

loop(loop );

ES5. Множественные вызовы как в jquery. Только писал сам и вероятно будет багать при каких-то условиях.
Код:
//множественный вызов
function turn(mytext){

   var sum = 0; //это будет общая для всех последующих функций переменная

   function console1(){
      var local = 0; //это переменная создается каждый раз заново
      local++;

      sum++;

      console.log(mytext + "Sum: " + sum + " Local: " + local);
   }

   console1();//для первого вызова


   return function m(mytext){

      console1();

      return m;
   };
}

turn("Первый вызов ")("Второй вызов ")("Третий вызов ")("Четвертый вызов ");

ES5. Вроде простая штука, но тоже очень угарная. ХЗ как называется.
Код:
//выполнение функции сразу после описания
var func = function(){
   console.log("выполняем функцию сразу после описания");
}();

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: JS для продвинутых

Сообщение автор Pyro338 в Сб Янв 06, 2018 7:55 am

//выполнение функции сразу после описания

всегда так раньше делал. хз. теперь кажется что лучше нормально объявить, а потом - вызвать. хотя в некоторых местах так удобнее, в некоторых - так
avatar
Pyro338
Админ

Сообщения : 587
Дата регистрации : 2017-12-25
Возраст : 32
Откуда : Ставрополь

Посмотреть профиль http://pyro338.ru/

Вернуться к началу Перейти вниз

Re: JS для продвинутых

Сообщение автор Dessan в Вс Янв 07, 2018 3:32 am

raingo пишет:
ES5. Вроде простая штука, но тоже очень угарная. ХЗ как называется.
Код:
//выполнение функции сразу после описания
var func = function(){
 console.log("выполняем функцию сразу после описания");
}();

А разве не так

Код:
var func = (function(){
 console.log("выполняем функцию сразу после описания");
})();
Самовызывающаяся функция

Dessan
Юный падаван

Сообщения : 426
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: JS для продвинутых

Сообщение автор raingo в Вс Янв 07, 2018 10:04 am

со скобками наверное типа надежнее. Спс что поправил.

raingo
Отдел прокрастинации

Сообщения : 756
Дата регистрации : 2017-12-25

Посмотреть профиль

Вернуться к началу Перейти вниз

Re: JS для продвинутых

Сообщение автор Спонсируемый контент


Спонсируемый контент


Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения