在纸上本文这看起来像是一个非常简单的操作,但由于某种原因,Javascript似乎并不喜欢它。基本上我有以下代码:
var news = "<b>" + place_name + ", " + county + ""<img id = 'centre' src=" + picture + ">" + "</b><ul><br>";
一般的想法是图片是一个变量,稍后将通过以下内容填充:
news.picture = entry2.picture;
这是一个提供给img源的链接。但是,当我这样做时:
console.log(news.picture);
变量仍未定义。这是正确的做事方式吗?
答案 0 :(得分:1)
这不是你应该这样做的方式。你必须设置你的变量,然后你可以构造一个这样的字符串。
你现在需要的,基本上是一个功能,如下所示:
var createNews = function(place_name,county,picture) {
return "<b>" + place_name + ", " + county + "<img id = 'centre' src=" + picture + ">" + "</b><ul><br>";
}
var news = createNews("Place","county","pic.jpg");
console.log(news);
如果您愿意,也可以这样做:
var createNews = function(obj) {
return "<b>" + obj.place_name + ", " + obj.county + "<img id = 'centre' src=" + obj.picture + ">" + "</b><ul><br>";
}
var news = {
place_name : "Someplace",
county : "Somewhere",
picture : "foo.png"
};
var newsItem = createNews(news);
console.log(newsItem);
答案 1 :(得分:0)
news是一个由字符串和变量组成的变量。
所以你不能使用news.picture。
虽然你可以把变量变成一个函数对象。
var news = function() }
this.picture = "something";
this.getString = function() {
return this.picture+"some string";
};
};
然后你可以使用news.picture在news中设置图片变量,并使用news.getString()获取字符串。