循环数组后得到特定的结果模式

时间:2012-02-16 06:14:14

标签: javascript jquery

转储问题:

var arr = ['top', 'dir1', 'dir2', 'dir3' .. goes];

循环播放此数组后如何得到如下结果?

  

result_string => #top,#top / dir1,#top / dir1 / dir2,#top / dir1 / dir2 / dir3

btw是否存在jQuery选择器斜杠的问题,

感谢。

2 个答案:

答案 0 :(得分:4)

试试这个。

var arr = ['top','dir1','dir2','dir3'];

for(var i=0,j=arr.length;i<j;i++)
{
   arr[i] = i  > 0 ? arr[i-1] + '/' + arr[i] : '#'+arr[i];
}

alert(arr.join(','))

答案 1 :(得分:0)

以下是您的代码段:

var arr = ['top', 'dir1', 'dir2', 'dir3'];
var result_string = "";
for(i = 0; i < arr.length; i++) {
    var requiredVal = "#";
    for(j = 0; j <=i; j++) {
        requiredVal += arr[j];
        requiredVal += j==i ? "" : "/";
    }
    result_string += requiredVal;
    result_string += i+1 < arr.length ? ", " : "";
}
alert(result_string);

您可以转义并使用/字符。请参阅参考:Selectors