Показать сообщение отдельно
  #289 (permalink)  
Старый 29.11.2013, 00:06
Профессор
Посмотреть профиль Найти все сообщения от Maxmaxmaximus3
 
Регистрация: 18.11.2013
Сообщений: 275

monolithed, так, давай другой пример,

function (){
2+2;
4+3;
}


я хочу вырезать тело функции и использовать его как блок, и то что вернет этот блок отретурнить, таким образом я реализую поведение когда функция возвращает результат последнего выражения и без оператора return. ивал использовать нельзя потому что он медленный.

иными словами я из

function (){
2+2;
4+3;
}


хочу сделать

function () {
return {
2+2;
4+3;
}

}

Почему не ивал? Потому что я хочу составить такой код функции который бы реализовывал такое поведение, и я бы создал из него новую функцию new Function('code'); и она работала бы с нативной скоростью.


И это решение просто красивое, разумеется если нет способа, то придется парсить код функции и искать последнее выражение и перед ним рисовать return.

Последний раз редактировалось Maxmaxmaximus3, 29.11.2013 в 00:10.
Ответить с цитированием