melky, круто, только функция возвращает -1.
alert( (function pewpew(Infinity, length, __proto__) { return [,,~0.[0|0]][pewpew.__proto__.length && Infinity, -~String(this).length >> __proto__] << (0. === .0) + Infinity; }) .apply(typeof pewpew, [,,2]) ) Ошибка в 151-ой строке. Цитата:
|
Цитата:
PS там вроде 148 строк :-? PSS ошибка была в том, что я написал в разделе ARR, что он будет таким : [,,-1] а потом в коде и в других местах писал , что он будет равен [,,2] в этом и была ошибка. лол :) это от невнимательности. она меня везде преследует. таки опубликую этот пост, с поправкой. |
написал всё в пунктиках :
рассмотрим return поподробней, в нескольких частях
таким образом, форма записи этой функции расширяется до : (убрал запятую и &&.) (function pewpew(Infinity, length, __proto__){ return [undefined, undefined, -1][ -~String(undefined).length >> 2 ] << NaN; }).call(typeof pewpew, undefined, undefined, 2); ...проверим, равны ли возвращаемые значения этого кода и оригинального ? var original = (function pewpew(Infinity, length, __proto__) { return [,,~0.[0|0]][pewpew.__proto__.length && Infinity, -~String(this).length >> __proto__] << (0. === .0) + Infinity; }).apply(typeof pewpew, [,,2]); var remixed = (function pewpew(Infinity, length, __proto__){ return [undefined, undefined, -1][ -~String(undefined).length >> 2 ] << NaN; }).call(typeof pewpew, undefined, undefined, 2); alert( original === remixed ); да. всё хорошо :) если подставить переменные, то получается (без return. это уже не функция. просто код) : [undefined, undefined, -1][2] << NaN это эквивалентно : -1 << NaN и равно это alert( -1 << NaN ); // -1 THE END |
melky, Приветствую! Тут, наверное, опечатка
Цитата:
Цитата:
|
Цитата:
две точки поставлены для обращения к свойству 0 числа 0. аналог : Number.prototype.test = "okay"; alert( 0..test ); // okay вообще, я с сонным мозгом забыл про квадратные скобки. спасибо за находки :) поправил. |
melky, эт Вам спасибо, что на нас, неучей, время тратите ^_^
Я так понимаю, две точки - обращение к прототипу. А как к нему еще можно обратиться? |
Цитата:
Ну и это всё же не обращение к прототипу, а обращение к свойству. Но т.к. у примитивов своих свойств не бывает, значение может быть взято только из прототипа. |
Блин,народ тело пишет всякую ерунду в своём извращенном сознании ,а вы в этом бреде ещё пытаетесь разобраться.
Не Гоните!!! помните?- с кем поведёщься от того и наберёшься??!!!:agree: блин ща минусовать начну,зная что вы заминусете возможможно больше в ответ,но это возможно вернёт вас к реальности-поймёте что ведётесь на бред шизофреника!! |
Цитата:
Цитата:
B@rmaley.e><e, благодарю. Как хорошо, что Вы не позволили мне придти к ложным выводам/умозаключениям :) (пытаюсь плюсовать Вам карму, но чем форум ругается...) |
Цитата:
мне тогда было невдомёк про чистый и понятный код :) я глупо превращал свой стиль в стиль компилятора от гугла. сейчас же я так (обфусцированно) не пишу и стараюсь от этого уберегать других |
Часовой пояс GMT +3, время: 12:53. |