如何创建功能替换图像的数字?
示例:var dd="123"
我想创建dd
到image
的函数替换值。
if 1=image1
if 2=image2
if 3=image3
怎么做?请提供编码。
答案 0 :(得分:1)
function imageReplace ( str ) {
var arr = str.split('');
var returnArr = new Array();
for(var i in arr ){
returnArr.push("image"+arr[i]);
}
return returnArr;
}
我认为这就是你要找的东西
答案 1 :(得分:0)
很难回答,因为缺乏预期的流量控制,但是这样的事情:
function concatFilename(str,index)
{
return 'image'+str[index];
}
用法:
var dd = 'abc123';
for (var i=0; i < dd.length; i++)
{
console.log(concatFilename(dd, index));
}
或者......更容易:
dd[2] = 'c';
答案 2 :(得分:0)
dd
是否包含一个要转换为整数的数字?如果是这样的话:
var dd = '123';
dd.replace(/([\d]+)/, /image$1/); // 'image123'
如果您想要转换每个数字:
var dd = '123';
dd.replace(/([\d])/, /image$1/); // 'image1image2image3'
希望有所帮助。 :)
老实说,我假设你几乎肯定想要两个中的第一个。 (如果有疑问,请问问自己 - 如果您在图像10或11上,您会期待什么行为?)
答案 3 :(得分:0)
var getImages = function(s) {
var images=[], ss=(""+s).split(''), len=ss.length, i;
for (i=0; i<len; i++) {
images.push("image" + ss[i] + ".gif");
}
return images;
};
getImages(123); // => ["image1.gif", "image2.gif", "image3.gif"]
getImages(42); // => ["image4.gif", "image2.gif"]
getImages(0); // => ["image0.gif"]
[编辑] 或者可能是这样的?
var getImageNames = function(s) {
return (""+s).split('').map(function(x) {
return '"image'+x+'.gif"';
}).join(' ');
}
getImageNames(123); // => '"image1.gif" "image2.gif" "image3.gif"'
答案 4 :(得分:0)
您可以使用正则表达式将每个数字替换为图像标记:
dd = dd.replace(/(\d)/g, '<img src="image$1.gif" alt="$1" />');
这也适用于包含数字的字符串,例如"Page 12 of 42"
已转换为"Page <img src="image1.gif" alt="1" /><img src="image2.gif" alt="2" /> of <img src="image4.gif" alt="4" /><img src="image2.gif" alt="2" />"
。