2017-04-12 16 views
0

URLからJSONデータを取得してsqlite db.From sqlite dbに格納しようとしています。データをJSON配列のオブジェクトに変換していて、その値を使用しています。それ以外の場合は、JSON created_atにはn個のオブジェクトがありません.field3は、field3が0の場合に実行されるデータです。無視する必要があります。また、field3が1の場合は、次のobjは、field3の1.Myコードの終わりです。else条件の解析でエラーが発生しました

function renderList1(tx,result){ 
    newJson = [ ]; 
    if (result != null && result.rows != null) { 
     for (var k = 0; k < result.rows.length; k++) { 
      var row = result.rows.item(k); 
      newJson[k] = { created_at:row.Created_at,entry_id:row.entry_id,field1:row.Field1,field2:row.Field2,field3:row.Field3 }; 
     } 
    } 
    var jsonAll = JSON.stringify(newJson); 
    console.log(jsonAll); 
    var feeds = $.parseJSON(jsonAll); 
    console.log(feeds); 

    power(); 
    function power(){ 
    for (var i=0;i<feeds.length;i++) //feeds contain the JSON data 
    { 
     if(feeds[i]["field3"] === "1"){  
     //Start Time 
     var d1 = new Date(feeds[i]["created_at"]); 
     console.log(d1); 
     for (var j=i+1;j<feeds.length;j++) //compare objects starting from 'i' till next "1" is found 
     { 
      if(feeds[j]["field3"] === "0") 
      { 
       //End Time 
       var d2 = new Date(feeds[j]["created_at"]); 
       console.log(d2); 
       j=feeds.length; 
      } 
     } 
     //Time difference in milli seconds 
     var diff = d2.getTime() - d1.getTime(); 
     var diffInHours= diff/1000diff/ 3600/1000; 
     console.log(diffInHours); 
     var pow = Powercon * diffInHours; 
     console.log(pow); 
    }else{ 
     console.log("Field3 is 0"); 
     } 
    } 
} 

JSONデータ:私は条件がなく、それが起こっている場合、それは実行する必要があり、私はフィールド3が1に等しい場合ならば、他の条件で問題を抱えて実行したときに、私は上記のコードを試みた

[ 
{ 
    "created_at": "2017-04-12T08:53:46Z", 
    "entry_id": 37368, 
    "field1": "14", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T09:03:54Z", 
    "entry_id": 37369, 
    "field1": "14", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T09:14:02Z", 
    "entry_id": 37370, 
    "field1": "14", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T09:24:03Z", 
    "entry_id": 37371, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T09:34:06Z", 
    "entry_id": 37372, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T09:44:09Z", 
    "entry_id": 37373, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T09:54:12Z", 
    "entry_id": 37374, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T10:04:20Z", 
    "entry_id": 37375, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T10:24:20Z", 
    "entry_id": 37376, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T10:44:27Z", 
    "entry_id": 37377, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T10:54:30Z", 
    "entry_id": 37378, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T11:04:34Z", 
    "entry_id": 37379, 
    "field1": "16", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T11:14:37Z", 
    "entry_id": 37380, 
    "field1": "16", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T11:24:40Z", 
    "entry_id": 37381, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T11:34:43Z", 
    "entry_id": 37382, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T11:44:46Z", 
    "entry_id": 37383, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T11:54:49Z", 
    "entry_id": 37384, 
    "field1": "16", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T12:04:53Z", 
    "entry_id": 37385, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T12:14:56Z", 
    "entry_id": 37386, 
    "field1": "15", 
    "field2": "0", 
    "field3": "0" 
}, 
{ 
    "created_at": "2017-04-12T12:25:00Z", 
    "entry_id": 37387, 
    "field1": "16", 
    "field2": "0", 
    "field3": "0" 
} 
] 

間違っている???ありがとう

+1

(フィード[i] ["field3"] === 1){?整数かもしれません。 – abhiklpm

+1

@Anusha try 'if(feeds [i] [" field3 "] ==" 1 ")' – user3441151

+0

その作業[email protected] – Anusha

答えて

1
if(feeds[i]["field3"] === 1){ 

は、問題を解決する必要がありますつもりです他にどこcondition.Can誰も私を助けて。それは整数として扱われます。また、配列の操作に非常に役立つ高次関数またはlodash.jsの使用を検討し、コードの管理と読み込みがより簡単になるようにする必要があります。

関連する問題