如何替换模板字符串中的变量?
How to substitute a variable in a template string?
一个有两个参数的函数:
- 第一个参数将包含字符串 - 'hello ${val}'
- 第二个参数将是一个对象 - {'val':'world'}
我需要编写一个解决方案,其中第一个参数将访问第二个参数对象的 属性 并在第一个参数的字符串中打印它的值。
function PropertyAccess('hello ${val}', {val:'world'}){
//returns "Hello World"
}
查看您更新后的问题后,我认为您真正想要的是一个函数,该函数将接受一个模板和一个要替换的值对象。这是一个工作示例。
function PropertyAccess(template, values) {
for (key in values) {
template = template.replace('${' + key + '}', values[key])
}
return template;
}
console.log(PropertyAccess('hello ${val}', {val: 'world'}))
一个有两个参数的函数:
- 第一个参数将包含字符串 - 'hello ${val}'
- 第二个参数将是一个对象 - {'val':'world'}
我需要编写一个解决方案,其中第一个参数将访问第二个参数对象的 属性 并在第一个参数的字符串中打印它的值。
function PropertyAccess('hello ${val}', {val:'world'}){
//returns "Hello World"
}
查看您更新后的问题后,我认为您真正想要的是一个函数,该函数将接受一个模板和一个要替换的值对象。这是一个工作示例。
function PropertyAccess(template, values) {
for (key in values) {
template = template.replace('${' + key + '}', values[key])
}
return template;
}
console.log(PropertyAccess('hello ${val}', {val: 'world'}))