Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   СЛОЖНОЕ ВЫРАЖЕНИЕ? Что оно вернет и почему? (https://javascript.ru/forum/misc/23919-slozhnoe-vyrazhenie-chto-ono-vernet-i-pochemu.html)

Livanderiaamarum 12.12.2011 00:09

СЛОЖНОЕ ВЫРАЖЕНИЕ? Что оно вернет и почему?
 
(function pewpew(Infinity, length, __proto__) {
	return [,,~0.[0|0]][pewpew.__proto__.length && Infinity, -~String(this).length >> __proto__] << (0. === .0) + Infinity;
})

.apply(typeof pewpew, [,,2])


что вернет это выражение почему?
после return идут куча действий.. да и вообще что означает (0. === .0) + Infinity
расскажите пожалуйста кто кв курсе;)?

__________________________________________________ ____________________________

Gvozd 12.12.2011 00:30

Код обфусцирован, а значит, не предназначен для чтения человеком(по задумке автора).
Иными словами, автор взял свою нормально написанную прогу, и (посредством обфускатора) испортил ее читаемость, заменив обыденные конструкции на мене читаемые, и усложняющие анализ/редактирование кода.

Хотите ломать голову над этим кодом - ломайте свою, и не впутывайте других.

Про каждый маленький кирпичик этого кода, вы можете найти информацию на данном сайте, если внимательно почитаете документацию

Livanderiaamarum 12.12.2011 00:33

Цитата:

Сообщение от Gvozd (Сообщение 142109)
Код обфусцирован, а значит, не предназначен для чтения человеком(по задумке автора).
Иными словами, автор взял свою нормально написанную прогу, и (посредством обфускатора) испортил ее читаемость, заменив обыденные конструкции на мене читаемые, и усложняющие анализ/редактирование кода.

Хотите ломать голову над этим кодом - ломайте свою, и не впутывайте других.

Про каждый маленький кирпичик этого кода, вы можете найти информацию на данном сайте, если внимательно почитаете документацию


хоть одно обфуксирваонное место покажи. если ты в приоритете операторов не разбираешься или просто не способен понять что там напсиано то это уже твои проблемы а не обфуксация кода. я например все понимаю кроме (0. === .0)

B@rmaley.e><e 12.12.2011 00:49

(function pewpew(Infinity, length, __proto__) {
	return [,,~0.[0|0]][pewpew.__proto__.length && Infinity, -~String(this).length >> __proto__] << (0. === .0) + Infinity;
})

.apply(typeof pewpew, [,,2])
Возвращаемое значение разворачивается в
[,,~0.[0|0]][-~"unedfined".length >> 2] << (0. === .0) + Infinity;
[,,~0.[0|0]][2] << (0. === .0) + Infinity;
~0.[0|0] << (0. === .0) + Infinity;
-1 << (0. === .0) + Infinity;
-1;
Цитата:

Сообщение от Livanderiaamarum
я например все понимаю кроме

Рад за Вас. Но если вышенаписанное Вы считаете нормальным кодом, то работать вместе с Вами мне бы не хотелось.

Livanderiaamarum 12.12.2011 01:07

конечно не считаю это задание нам в инсте задали.;)

zebra 12.12.2011 01:12

Клац Раздел God Mode :) Лапшу не вешайте

Livanderiaamarum 12.12.2011 01:27

Цитата:

Сообщение от zebra (Сообщение 142117)
Клац Раздел God Mode :) Лапшу не вешайте

FFFFUUUU ну ладно ладно) просто не справился с год моде) решил тут посмотреть кто справится:)
да и в инсте не учусь)

devote 12.12.2011 01:38

вот жешь люди от жиру бесятся.

melky 12.12.2011 01:50

я написал тираду на листа 3 (а4)

но застопорился на одном

у меня __proto__ равен объекту CommandLineAPI

это как понимать ? __proto__ занята , как class и т.д ?

застопорился только на этом. остальное ок.

тираду оставлю на pastie. чтоб не пропадала зря:)

Livanderiaamarum 12.12.2011 01:53

Цитата:

Сообщение от melky (Сообщение 142121)
я написал тираду на листа 3 (а4)

но застопорился на одном

у меня __proto__ равен объекту CommandLineAPI

это как понимать ? __proto__ занята , как class и т.д ?

застопорился только на этом. остальное ок.

тираду оставлю на pastie. чтоб не пропадала зря:)

да ты же почти как Джон Резинг:) !


Часовой пояс GMT +3, время: 08:38.