检查同一变量名称的多个数组是否包含任何项目

时间:2013-08-23 18:10:38

标签: javascript jquery .net arrays razor

下面的示例代码使用了razor和Javascript的混合。 RenderChart函数接受日期。日期var返回一个日期数组。我想知道如何检查所有日期数组,以查看它们是否包含任何项目或在这种情况下包含日期字符串。

foreach (MeasurementTypeGroup group in Model.MeasurementTypeGroups){
    var dates =  @(Html.Raw(dates)); // dates returns []

        RenderChart( dates);

        console.log(dates); //console would display something like " [] [] [] or [] [3/2/12] []
}

最初我使用if条件检查长度

if(dates.length === undefined || dates.length === 0) {
    //do something 
}

这部分有效,但是它在foreach循环中的每次迭代中执行此操作,而不是在所有日期数组的总计上执行此操作。我猜我需要返回另一个变量,然后将一个内容推送到另一个变量,但我有一个问题想出如何做到这一点。谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

您可以使用concat将所有数组合并为一个数组。 http://www.w3schools.com/jsref/jsref_concat_array.asp

var allDates = []

foreach (MeasurementTypeGroup group in Model.MeasurementTypeGroups){
    var dates =  @(Html.Raw(dates)); // dates returns []
    allDates.concat(dates);
}

RenderChart(allDates);