Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.02.2009, 22:01
Аватар для HelpeR
Профессор
Отправить личное сообщение для HelpeR Посмотреть профиль Найти все сообщения от HelpeR
 
Регистрация: 21.10.2008
Сообщений: 241

что есть mootols?
Здравствуйте всем! Видел уже давно код фрэймворка mootols но как то не задумывался, что это вообще куча чего то очень не понятного. Очень интересно, тут какая то функция, которой передается 3 или 4 аргумента... кто знает как вообще работает этот мутулс.
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('m 8e={7Y:\'1.11\'};k $4A(U){h(U!=75)};k $r(U){o(!$4A(U))h Y;o(U.3c)h\'O\';m r=4w U;o(r==\'2A\'&&U.7T){1O(U.5i){W 1:h\'O\';W 3:h(/\\S/).2o(U.7F)?\'8R\':\'9i\'}}o(r==\'2A\'||r==\'k\'){1O(U.77){W 1G:h\'1e\';W 5c:h\'56\';W 1s:h\'4Q\'}o(4w U.P==\'4l\'){o(U.2b)h\'9l\';o(U.78)h\'V\'}}h r};k $3s(){m 3L={};C(m i=0;i<V.P;i++){C(m t 17 V[i]){m ap=V[i][t];m 4s=3L[t];o(4s&&$r(ap)==\'2A\'&&$r(4s)==\'2A\')3L[t]=$3s(4s,ap);14 3L[t]=ap}}h 3L};m $N=k(){m 15=V;o(!15[1])15=[c,15[0]];C(m t 17 15[1])15[0][t]=15[1][t];h 15[0]};m $3t=k(){C(m i=0,l=V.P;i<l;i++){V[i].N=k(1n){C(m 1w 17 1n){o(!c.1l[1w])c.......

и так далее продолжается первый агрумент потом второй и третий 62,709, и четрвертый тоже куча какая то
||||||||||||this|||||return|||function||var||if||el|type||property|options|||||||event|for|||Element|fn|value|to|from|elements|window|document|extend|element|length|bind|events||param|obj|arguments|case|Fx|false||||new||else|args||in|contains|push|Math|true|items|now|array|css|style|className|result|null|selector|prototype|parent|props|values|break|name|start|Class|transition|keys|each|prop|parsed|Elements|mode|relatedTarget|current|custom|timer|initialize|opacity|Array|nocash|Garbage|delay|join|unit|overflown|temp|switch|getStyle|parse|ie|call|documentElement|addEvent|params|pos|key|Event|rgb||Methods|create|context|max|getElementsByTagName|text||map|margin|CSS|item|properties|tag|parentNode|match|Events|string|filter|set|Transitions|top|returns|shared|test|time|stop|offset|index|fireEvent|iCss......'.split('|'),0,{}))
и в конце split. Хотелось бы узнать как это вообще работает. Может узнаю что нибудь новое в js
Ответить с цитированием
  #2 (permalink)  
Старый 07.02.2009, 22:08
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

HelpeR,
MooTools это JavaScript фреймворк.
А код, который вы выложили, это обфусцированный исходник этого фреймворка с помощью утилиты packer.

Другими словами, исходник самого фреймворка не такой "страшный", как сжатый и обфусцированный код.

Вот, например, если такой простой вызов, как:
alert(1);

пропустить через packer, то получится следующий код:
eval(function(p,a,c,k,e,r){e=String;if('0'.replace(0,e)==0){while(c--)r[e(c)]=k[c];k=[function(e){return r[e]||e}];e=function(){return'^$'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('alert(1);',[],1,''.split('|'),0,{}))

Последний раз редактировалось Андрей Параничев, 07.02.2009 в 22:12.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема onmouseout если есть вложенные теги... AlexPa Общие вопросы Javascript 5 27.01.2009 19:59
Что означает конструкция ? ivanmara Общие вопросы Javascript 55 07.01.2009 02:54
Что такое "javascript:document.login.submit()" i_live_in_Moscow Общие вопросы Javascript 21 30.09.2008 15:25
Как узнать что находится в <label></label> duke_nu Events/DOM/Window 4 22.04.2008 21:53
есть ли global в javascript scuter Общие вопросы Javascript 21 11.04.2008 21:48