Показать сообщение отдельно
  #1 (permalink)  
Старый 28.10.2010, 14:31
Интересующийся
Отправить личное сообщение для Volk_88 Посмотреть профиль Найти все сообщения от Volk_88
 
Регистрация: 23.07.2009
Сообщений: 17

Замена позиции в строке
Имеется строка: 0000000
Входе работы скрипта, постоянно требуется изменить позицию строки с 0 на 1, и обратно. Но вот никак не могу придумать эту замену без разбивки этой строки в массив и сбора обратно.

var str = '0000000';
str[1] = 1; // так нельзя, readonly

RegExp? но я совершенно не понимаю как создать регулярку, которая находила бы заданную позицию.

Возможно через prototype, проводить замену?

Единственный вариант (но я думаю есть варианты лучше):
var str='00000000', newstr = [], num =2;
for(var i=0; i<str.length; i++){
  if(num == i) newstr[i] = '1';
  else newstr[i] = str[i];
}
str = newstr.join(''); // 00100000

Последний раз редактировалось Volk_88, 28.10.2010 в 14:42.
Ответить с цитированием