2012-02-23 6 views
2

Смотрите мой кодJavascript string.replace(), неоднозначные результаты

<html> 
<body> 

<script type="text/javascript"> 

var str="Visit Microsoft!"; 

document.write(str = str.replace("",'ss')); 

</script> 
</body> 
</html> 

Выход

ssVisit Microsoft! 

Почему это происходит.?

+7

'replace' со строкой будет заменить только первое вхождение этой строки. Вы передаете пустую строку, которая находится в начале строки ('' something ".indexOf (" ")' возвращает '0'). –

+0

Почему в начале строки есть пустая строка? –

+3

Потому что '' Посетите Microsoft! " === "" + "Посетите Microsoft!" ' –

ответ

2

Это правильно, потому что каждая строка начинается с пустой строки. Смотрите ниже должности для получения дополнительной информации:

Why does "abcd".StartsWith("") return true?

Смежные вопросы