如何在JSON中使用占位符

时间:2013-03-01 17:31:56

标签: javascript jquery json

有没有办法在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}"
                 }
    }

谢谢。

1 个答案:

答案 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
相关问题