Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   недопер с синтаксисом) (https://javascript.ru/forum/misc/21493-nedoper-s-sintaksisom.html)

faleev 12.09.2011 14:21

недопер с синтаксисом)
 
var ".$var[11]." = 'eval';
var ".$var[12]." = ".$var[11].";
-------------------------------------

this[".$var[12]."](".$var[9].");

Господа, посоветуйте как раскидать третью строку по переменным чтоб она коректно отработала. ( то есть 'this' надо раскидать).
Первые две строки написал чтоб понятнее было что в переменных, var[12] =eval, а var[9] просто любой код который должен выполнится.
Надо примерно так:

var ".$var[1]." = 'th';
var ".$var[2]." = 'is[';
var ".$var[3]." = '](';
".$var[1]."+".$var[2]."+'".$var[12]."'+".$var[3]."+".$var[9].");

Только чтоб работало) Это что я раскидал не работает(.

DjDiablo 12.09.2011 14:57

в javaScript нет синтаксиса вида.
var ".$var[1]." = 'th';


к тому же не ясно чего вы вообще хотите.

тот код который вы привели, это дичайшая лабуда )))
Я бы сказал абстракционизм в мире программирования.

чтобы вы не задумали.
Вот список строковых функций.
регулярные выражения наверное тоже пригодятся.

faleev 12.09.2011 15:07

var ".$var[1]." = 'th';

var ".$var[1]." определяется (инициируется случайное название в цикле в начале кода который я не стал приводить, оно и так должно быть ясно)
Что вас тут напрягает?
Подобная конструкция работает у меня в коде на ура.
Да ну суть не в этом
раскидайте по своему по переменным)

faleev 12.09.2011 15:07

var ".$var[1]." = 'th';

var ".$var[1]." определяется (инициируется случайное название в цикле в начале кода который я не стал приводить, оно и так должно быть ясно)
Что вас тут напрягает?
Подобная конструкция работает у меня в коде на ура.
Да ну суть не в этом
раскидайте по своему по переменным)

faleev 12.09.2011 15:10

Цитата:

Сообщение от DjDiablo (Сообщение 126102)
Думаю вы не только меня озадачили )))
Чего вы хотите не понял ?

И что это за креатив. ? ))))
var ".$var[1]." = 'th';

в javaScript нет такого синтаксиса.

Хочу я одного , я же чуть ли не рассказ об одной строке тут написал , десять раз повторил и переуточнил)))
вот строка
this[".$var[12]."](".$var[9].");

>>> хочу чтоб заместо this были переменные, а в переменных уже 'this'

Прочитайте выше , возможно синтаксис кривой , но логика то понятна?

Gozar 12.09.2011 15:18

Цитата:

Сообщение от faleev (Сообщение 126108)
Прочитайте выше , возможно синтаксис кривой , но логика то понятна?

Вообще-то не очень. Это вообще чего и зачем?

faleev 12.09.2011 15:24

var ".$var[1]." = 'th';
var ".$var[2]." = 'is[';
var ".$var[3]." = '](';
".$var[1]."+".$var[2]."+'".$var[12]."'+".$var[3]."+".$var[9].");

мне требуется исправить в этих строках что неправильно с Вашей точки зрения и все. Элементарно. Все переменные описаны, в var12 - eval , в var9 код который в конце конструкции должен исполнится.
Вопросы конкретные , по существу есть?
Смысл для меня - обфускация кода.

DjDiablo 12.09.2011 15:36

Мне непонятно зачем такое астрономическое количество ковычек, точек и других символов которые здесь особо то и ненужны.

Почему не так.

<script>
        var vars=[];
        vars[1] = 'th';
        vars[2] = 'is[';
        vars[3] = '](';

        result=vars[1]+vars[2]+vars[3]
	alert(result);
</script>


если нужно выполнить результат сложения, ну дак выполняйте result.
eval или Function вам в помощь.
<script>
        var vars=[];
	vars[1] = 'alert';
	vars[2] = '("Привет я программа ФраНКинШтеЙна"';
        vars[3] = ');';

        result=vars[1]+vars[2]+vars[3]
	super=eval(result);

       super
</script>

Gozar 12.09.2011 15:42

faleev,
Это не обфускация кода, это бредятина.

faleev 12.09.2011 15:45

еще раз повторю - мне надо сделать рабочей именно строку
var ".$var[1]." = 'th';
var ".$var[2]." = 'is[';
var ".$var[3]." = '](';
".$var[1]."+".$var[2]."+'".$var[12]."'+".$var[3]."+".$var[9].");

там в переменных "this" и "eval" , и эти переменные в строке должны корректно отработать как this и eval !


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