Javascript: replace all

Июнь 18, 2009
Работая несколькими языками программирования очень быстро привыкаешь к определенному поведению, и ожидаешь, что, возможно с разным синтаксисом, но однотипные задачи будут приводить к одинаковому результату. Например, замена в строке — что может быть проще: у строк обычно есть метод replace, который заменяет вхождение одной строки на другую и это одинаково работает в с, c#, pascal, python, но вот создателям ява-скрипта показалось это неправильным — да, у строк есть метод replace, но заменяет он только первое вхождение искомой строки, а для замены всех вхождений есть, нет, не метод replaceAll, а есть какой странный синтаксис:

<big>str = str.replace(”find”,”replace”) // замена только первого вхождения
str = str.replace(/find/g,”replace”) // аналог replaceAll или просто привычное поведение функции
</big>


Мой моск в огне.

tags:
posted in Программирование by dmitko

3 Comments to "Javascript: replace all"

  1. Любитель wrote:

    Случайно увидел. Не ожидал.

  2. pav wrote:

    Это не странный синтаксис, а применение регулярного выражения. Советую почитать про регулярки, полезная вещь.

  3. dmitko wrote:

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

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org