2014-09-23 85 views
2

在下面一行與string.replace,lossLocation.state $,

$符號之後的更換取出,

我需要保持$,因爲它是用來在變量中。

'{0}'.replace(
     '{0}' 
     , 'categories.Country === \'$formData.lossLocation.state$\'.toUpperCase()') 

它給了我

"categories.Country === '$formData.lossLocation.state'.toUpperCase()" 

預期的結果應該是

"categories.Country === '$formData.lossLocation.state$'.toUpperCase()" 

我試過以下,但仍然被刪除時更換

state\$ 
+0

雅,好像相關的問題。大概在關閉它之後 – devric 2014-09-23 02:14:38

回答

2

因爲它在String.prototype.replace()。要替換內容中的'$',您應該使用'$$'而不是'\ $'。

所以構建它的正確方法是

'{0}'.replace('{0}', 
    'categories.Country === \'$formData.lossLocation.state$\'.toUpperCase()' 
     .replace(/\$/g, '$$$$') 
)