Javascript-在while循环结束后仅显示数组的Last Value

时间:2020-12-07 21:18:18
var re=/\"travelsName\"\:\"(.*?)\"/g;  //searching global matches and extracting obtained matches in brackets


var data="travelsName":"ddd Travels","travelsName":"nnn Travels","travelsName":"xxx Travels",;//This is a string not json object


var myArray;
                while ((myArray = re.exec(data)) != null)
                {
                     msg = "Found " + myArray[1] + ".  ";



                }

Now i want the whole matched array of myArray[1], which is exact matched version of the regex.

现在我想要myArray [1]的整个匹配数组,这是正则表达式的完全匹配版本。

when i hit alert inside while loop i can see the array values . If i call alert outside the while loop then i am ending up with last array value in alert box which is not i want.

当我在循环中点击警报时,我可以看到数组值。如果我在while循环之外调用alert,那么我最后会在alert box中找到最后一个数组值,这不是我想要的。

I want whole array outside while loop. I want array[0]=ddd Travels array[1]=nnn Travels etc... This is done i ajax call and data will be loaded dynamically

我希望整个数组在循环之外。我想要array [0] = ddd Travels array [1] = nnn Travels等...这是我做的ajax调用,数据将动态加载

Thanks in advance

提前致谢

1 个解决方案

#1


0  

Try this for your example:

试试这个例子:

var re=/\"travelsName\"\:\"(.*?)\"/g;
var data='"travelsName":"ddd Travels","travelsName":"nnn Travels","travelsName":"xxx Travels",';

var myTmpArray;
var myArray = [];
while ((myTmpArray= re.exec(data)) != null) {
    myArray.push("Found " + myTmpArray[1] + ".  ");
}

I'm sure that you can find better solution if you give more infirmation

如果你提供更多的信息,我相信你能找到更好的解决方案

#1


0  

Try this for your example:

试试这个例子:

var re=/\"travelsName\"\:\"(.*?)\"/g;
var data='"travelsName":"ddd Travels","travelsName":"nnn Travels","travelsName":"xxx Travels",';

var myTmpArray;
var myArray = [];
while ((myTmpArray= re.exec(data)) != null) {
    myArray.push("Found " + myTmpArray[1] + ".  ");
}

I'm sure that you can find better solution if you give more infirmation

如果你提供更多的信息,我相信你能找到更好的解决方案