鍍金池/ 問答/Java  Python  C  C++  HTML/ 這個數組邏輯我怎么實現(xiàn),有些復雜....

這個數組邏輯我怎么實現(xiàn),有些復雜....

  1. 我現(xiàn)在要把這2個數組做對比,上面數組到下面這個數組找字段名,然后判斷兩字段名后面的對應時間,如果都有值的話,后面字段對應的時間減前面字段對應的時間.
  2. 前一個字段后面沒時間的話,操作樣式不顯示.
  3. 前一個字段后面有時間 后面字段沒時間的話,判斷數組后面剩下的所有項如果有時間的話就操作樣式不顯示,都為null沒時間的話就本地時間減上一個字段后面的時間.

圖片描述

圖片描述

  1. 這是代碼:

//日志路徑:
window._webconfig.SampleMain_WebLog = [ //樣本狀態(tài)時間對應字段

{ state: 400, column: "RequestTime" },  //采樣*
// { state: '', column: "LisSjsjTime" }, //送檢
// { state: '', column: "LisQsSjTime" }, //簽收
{ state: 400, column: "RegisterTime" }, //已登記*
{ state: 420, column: "InlabbingTime" }, //IOM*
{ state: 403, column: "CENTTIME" },  //離心*
{ state: 405, column: "DECAPTIME" },    //去蓋*
{ state: 410, column: "TestTime" }, //測試中*
{ state: 800, column: "ReportTime" },   //已上傳*
// { state: '', column: "LisReportTime" } //已發(fā)送

];

        var _valueStatu = [];  
        var SampleMain_WebLog = top._webconfig.SampleMain_WebLog;
        for (var i =0;i < SampleMain_WebLog.length;i++){
            if(SampleMain_WebLog[i].state == statuOne){
                _valueStatu.push(SampleMain_WebLog[i].column);
            } else if(SampleMain_WebLog[i].state == statuTwo){
                _valueStatu.push(SampleMain_WebLog[i].column);
            }
        }
        console.log(_valueStatu)   //字段名數組,對應圖片第一個橫線的
        
        
        //比較數組,字段名/時間 對應圖片第二個花圈的:
        var fieldsDatas = [
            { _state: fieldsTitle[0], _column: times[0] },  //采樣
            { _state: fieldsTitle[1], _column: times[1] },  //送檢
            { _state: fieldsTitle[2], _column: times[2] },  //簽收
            { _state: fieldsTitle[3], _column: times[3] },  //已登記
            { _state: fieldsTitle[4], _column: times[4] },  //IOM
            { _state: fieldsTitle[5], _column: times[5] },  //離心
            { _state: fieldsTitle[6], _column: times[6] },  //去蓋
            { _state: fieldsTitle[7], _column: times[7] },  //測試中
            { _state: fieldsTitle[8], _column: times[8] },  //已上傳
            { _state: fieldsTitle[9], _column: times[9] }  //已發(fā)送
        ]
        console.log(fieldsDatas)

回答
編輯回答
詆毀你

怎么搞你不是已經說得清楚了么,難點在哪,只能自己慢慢調試吧?無非就是取值,比對,對滿足計算條件的情況進行計算。不滿足直接pass掉咯。

2017年8月30日 04:53
編輯回答
尛憇藌
const statusArr = ['RequestTime', 'RegisterTime', 'ReportTime']

var _valueStatu = SampleMain_WebLog.filter(function(obj) {
  return statusArr.indexOf(obj._state) !== -1
}).map(function(obj) {return obj._column})

這樣拿到_valueStatu

2017年4月7日 20:07