Всем привет.
Никогда с JavaScritp не работал. Возникла необходимость.
Встретил в коде скрипта такую строку
...
c1 = d.substring(i, i+1)*2;
...
где d — строка из 15 цифровых символов (к примеру, "239734971239871")
По-моемому, это полный бред. Спросить у автора скрипта что это значит нет возможности. А нужно весь код перевести в сишник.
Подскажите, как это понимать?
04.03.06 18:36: Перенесено модератором из 'Java' — Blazkowicz
afashs wrote:
> Никогда с JavaScritp не работал. Возникла необходимость.
> Встретил в коде скрипта такую строку
>
> ...
> c1 = d.substring(i, i+1)*2;
> ...
>
> где d — строка из 15 цифровых символов (к примеру, "239734971239871")
>
> По-моемому, это полный бред. Спросить у автора скрипта что это значит
> нет возможности. А нужно весь код перевести в сишник.
>
> Подскажите, как это понимать?
Если ты уверен, что там всегда цифры и i не выходит за длину d, то можно:
c1 = (d[i]-'0') * 2;
Posted via RSDN NNTP Server 2.0
Здравствуйте, afashs, Вы писали:
A>Подскажите, как это понимать?
Понимать очень просто: из строки берутся два символа, начиная с i-го. Полученная подстрока интерпретируется как как число (целое) в соответствие с правилами JavaScript. Полученное число умножается на 2. Результат вычислений присваивается c1.
Просто в JavaScript нет типов данных в обычном их понимании и такая "неявная конверсия" строк в числа и обратно — обычная вещь.
...думать — это значит ставить вопросы и пытаться находить ответы на них. // В. Рубцов