2016-09-13 2 views
0

일부 숫자를 함께 계산하는 데 어려움이있는 것 같습니다. 내가 사용하려는 경우 : 나는 NaN을 얻고있다jquery로 계산하기

for (var key in week_total) { 
    $("." + key).html(week_total[key]); 
} 

및 thereforce 모든 그룹은 NaN 있습니다. 이것은 week_total[group] = week_total[group] + work_minutes;을 사용해도 올바른 방법입니까?

내 스크립트 : 내가 생각

drawCallback: function (settings) { 
    var api = this.api(), data; 
    var rows = api.rows({page: 'current'}).nodes(); 
    var last = null; 

    var week_total = new Array; 

    api.column(weekColumn, { page: 'current' }).data().each(function (group, i) { 
     var work_hours = api.column(hourColumn).data()[i].split(':'); 
     var work_minutes = (+ work_hours[0]) * 60 + (+ work_hours[1]); 

     week_total[group] = week_total[group] + work_minutes; 

     if (last !== group) { 
      $(rows).eq(i).before('<tr><td colspan="5">{{ trans('admin.worktime.field.week') }} ' + group + '</td><td colspan="3" style="font-style:italic;" class="' + group + '"></td></tr>'); 

      last = group; 
     } 
    }); 

    for (var key in week_total) { 
     $("." + key).html(week_total[key]); 
    } 

    var array = { 
     work_month: work_month, 
     work_year: work_year 
    }; 

    history.pushState(null, null, '?' + $.param(array)); 

    drawDataTable(this); 
} 
+1

정의를 할 것인가? – Sabik

+0

@Sabik 당신은 무엇을 의미합니까? 'week_total'은'var week_total = new Array;'로 초기화되었고'for (var_total in week_total) {'부분에 사용되었습니다. –

답변

1

이 문제에 week_total 배열을 초기화되지 않았습니다. week_total [그룹] 다음 week_total [그룹] 정의되지 않은 경우

week_total[group] = week_total[group] 
    ? week_total[group] + work_minutes 
    : work_minutes; 

같아야 계산 + 1 NaN의 투어 week_total이 week_total [그룹]에 초기화 무엇

+0

왜 NaN이 있었는지에 대한 설명에 감사드립니다. –