2013-12-08 3 views
0
string[index] = 'a' 

похоже не работает, он не может изменить строку. Почему это и есть статьи об этом?Как изменить символ в строке?

+0

проверка из функции сращивания http://www.w3schools.com/jsref/jsref_splice.asp –

+0

пожалуйста, подробнее о строках https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String –

+0

Связано: [Являются ли строки JavaScript неизменяемыми? Нужен ли мне «построитель строк» ​​в JavaScript?] (Http://stackoverflow.com/questions/51185/are-javascript-strings-immutable-do-i-need-a-string-builder-in-javascript) и [Что означает неизменяемость?] (Http://stackoverflow.com/questions/3200211/what-does-immutable-mean) – apsillers

ответ

0

здесь пример функции, которая позволит решить эту

function replaceAt(string, index, newValue) { 
    if(index >= string.length || index < 0) {return false;} 
    var start = string.substr(0,index); 
    var finish = string.substr(index+1); 
    return start + newValue.toString() + finish; 
} 
0

Строки не являются массивами, но вы можете конвертировать их в массивы, а затем соединить их обратно в строки.

var strArray = string.split(""); 
strArray[index] = 'a'; 
string = strArray.join(""); 
Смежные вопросы