Contrairement à la bibliothèque de classes C#/.NET (et à la plupart des autres langages sensés), lorsque vous passez un fichier String
en tant qu'argument string-to-match de l'option string.replace
il ne fait pas de remplacement de chaîne. Elle convertit la chaîne en un RegExp
et effectue une substitution regex. Comme l'explique Gumbo, une substitution regex nécessite le paramètre g
lobal, qui n'est pas activé par défaut, pour remplacer toutes les correspondances en une seule fois.
Si vous voulez un véritable remplacement basé sur une chaîne de caractères - par exemple parce que la chaîne de correspondance est dynamique et peut contenir des caractères qui ont une signification spéciale dans le regexen - l'idiome JavaScript pour cela est le suivant :
var id= 'c_'+date.split('/').join('');