字符串''+ notify_name +'喜欢你的帖子。'来自数据库。我们将此静态字符串存储在数据库中。
变量 ntfnFound [0] .body 包含我们从数据库中提取的字符串。
var notify_name = 'tintu';
console.log(ntfnFound[0].body); /* ''+notify_name+' likes your post.' */
var body = ntfnFound[0].body;
console.log(body); /* ''+notify_name+' likes your post.' */
console.log(''+notify_name+' likes your post.'); /*tintu likes your post*/
我的问题是,
在上面的代码中为什么不'console.log(body);'显示'tintu喜欢你的帖子'??
或
为什么+ notify_name +没有被替换?
还有什么解决方案可以将'var body'中的字符串转换为'tintu喜欢你的帖子'??
在以下代码中,
console.log(''+notify_name+' likes your post.'); /*tintu likes your post*/
答案 0 :(得分:1)
我的第一个猜测是: 你把STRING保存在你的数据库中,当它拉出来时,它仍然是一个字符串,所以'和+必须转义:\'和\ +。
您要完成的任务是在数据库中保存一个字符串,以后您要插入变量的值。
我的方法是:保存“{0}喜欢你的帖子”等内容,然后在其上使用某种printf函数。
答案 1 :(得分:0)
JS中没有自动替换 - 您必须自己使用body.replace("+notify_name+",notify_name);
。
它在日志中工作的原因是。因为JS做了你告诉它要做的事情:''是一个空字符串,然后你链接了名称和文字“喜欢你的帖子'。