我的场景是这样的:
var data = {
name : 'joe',
message : 'Welcome ' + name,
fullname : 'Mr. ' + name
};
预期输出:
console.log(' user : ' + data.message)
Welcome joe
该怎么做呢?
发布于 2018-06-13 05:13:17
最接近的方法可能是使用函数作为参数。
const data = {
name: 'Joe',
message: function() {
return `Welcome ${this.name}`;
}
}
console.log(data.message())
但是,请记住,这不适用于原生JSON对象,只适用于JS对象。
发布于 2018-06-13 05:12:31
您可以使用get()
在对象中定义一个函数getter,然后将其作为property
调用。
var data = {
name : 'joe',
message : 'Welcome ',
name : 'Mr. ',
get fullMessage() {
return this.message + this.name;
}
};
console.log(data.fullMessage);
发布于 2018-06-13 05:12:40
您可以使用如下函数替换message和fullname字符串:
var data = {
name : 'joe',
message : function() { return 'Welcome ' + this.name },
fullname : function() { return 'Mr. ' + this.name }
}
console.log(data.message())
console.log(data.fullname())
https://stackoverflow.com/questions/50825807
复制相似问题