有没有办法在JSON中使用类似于Java属性文件的占位符?
我想用下面显示的JSON字符串替换以下属性值。如果可以使用占位符,我如何能够使用JS或JQuery动态替换占位符?如果可以在不使用正则表达式匹配和替换的情况下完成,那将会很棒。
WelcomeMessage=Welcome {0}
GoodBye=Goodbye,{0}. Thank you for visiting {1}
JSON字符串
{ "messages" : {
"WelcomeMessage":"Welcome {name}",
"GoodBye":"Goodbye,{name}. Thank you for visiting {siteName}"
}
}
谢谢。
答案 0 :(得分:1)
这可以解决您的问题:
// Your messages
var message = {
'welcome': 'Welcome {name}'
} ;
// Your variables
var vars= {
'name': 'user'
};
var placeholders = function ( message, variables ) {
for ( var v in variables ) {
message = message.replace( '{'+v+'}' , variables[v] );
}
return message;
} ;
alert ( placeholders(message['welcome'], vars) );
// Alert: Welcome user