JS如何在路径中包含变量?

时间:2012-09-27 19:32:30

标签: javascript

以下变量包含一个字符串,该字符串是图像的路径。

iconBlue.image = 'http://www.site.com/icon1.jpg';

如何在此路径中包含变量?让我解释一下。让我们说文件夹icon1.jpg icon2.jpg等中有很多图标。我有一个名为iconspec的变量,它取决于它的值(1或2或3等)指向我必须使用的图标。

如何在路径中包含变量iconspec?

iconBlue.image='http://www.site.com/icon"iconspec".jpg

我猜这样的东西,但语法正确。

4 个答案:

答案 0 :(得分:1)

你只需要把它变成一个带变量的简单字符串。

在你的情况下,你应该这样做:

iconBlue.image = 'http://www.site.com/icon'+iconspec+'.jpg';

+运算符类似于PHP中的.,它合并字符串。

答案 1 :(得分:0)

iconBlue.image='http://www.site.com/icon'+iconspec+'.jpg';

答案 2 :(得分:0)

要采用一种不同的路径,您可以将连接封装在一个函数中,并使其更具可重用性:

var icon = function(){
    this.path = '';
    this.imageName = '';

    this.imagePath = function() { return this.path + '/' + this.imageName };
};


var iconBlue = new icon(),
    iconRed = new icon();
iconBlue.path = "c:\\stuff";
iconBlue.imageName = "icon1.jpg";

iconRed.path="c:\\morestuff";
iconRed.imageName = "icon2.jpg";

alert(iconBlue.imagePath());
alert(iconRed.imagePath());

答案 3 :(得分:0)

最简单的解决方案是使用+将变量连接到字符串:

var name = 'sachleen';
var result = 'my name is ' + name;

Output: my name is sachleen

还有一些更强大的选项。

JavaScript sprintf()是JS的sprintf实现。

string.format in JS