簡體   English   中英

對象數組,用0過濾掉值

[英]Array of objects, filter out values with 0

我想刪除key + value的對象的值。時間戳記應保持不變。

 var array = [{ "timestamp": "2017-01-18T00:00:00.000Z", "Test Bar 0": 78.09482851766388 }, { "timestamp": "2017-01-18T01:00:00.000Z", "Test Bar 0": 124.09589189108233 }, { "timestamp": "2017-01-18T02:00:00.000Z", "Test Bar 0": 106.97921714748477 }, { "timestamp": "2017-01-18T03:00:00.000Z", "Test Bar 0": 118.7469310337081 }, { "timestamp": "2017-01-18T04:00:00.000Z", "Test Bar 0": 119.81672320518294 }, { "timestamp": "2017-01-18T05:00:00.000Z", "Test Bar 0": 67.39690680291541 }, { "timestamp": "2017-01-18T06:00:00.000Z", "Test Bar 0": 117.67713886223325 }, { "timestamp": "2017-01-18T07:00:00.000Z", "Test Bar 0": 87.72295806093751 }, { "timestamp": "2017-01-18T08:00:00.000Z", "Test Bar 0": 115.53755451928356 }, { "timestamp": "2017-01-18T09:00:00.000Z", "Test Bar 0": 78.09482851766388 }, { "timestamp": "2017-01-18T10:00:00.000Z", "Test Bar 0": 48.14064771636815 }, { "timestamp": "2017-01-18T11:00:00.000Z", "Test Bar 0": 67.39690680291541 }, { "timestamp": "2017-01-18T12:00:00.000Z", "Test Bar 0": 130.5146449199314 }, { "timestamp": "2017-01-18T13:00:00.000Z", "Test Bar 0": 128.37506057698172 }, { "timestamp": "2017-01-18T14:00:00.000Z", "Test Bar 0": 73.81565983176449 }, { "timestamp": "2017-01-18T15:00:00.000Z", "Test Bar 0": 109.11880149043446 }, { "timestamp": "2017-01-18T16:00:00.000Z", "Test Bar 0": 127.30526840550688 }, { "timestamp": "2017-01-18T17:00:00.000Z", "Test Bar 0": 123.02609971960749 }, { "timestamp": "2017-01-18T18:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T19:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T20:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T21:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T22:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T23:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T00:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T01:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T02:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T03:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T04:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T05:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T06:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T07:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T08:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T09:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T10:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T11:00:00.000Z", "Test Bar 0": 0 }] var abc = array.filter((object) => { let keys = [] for (let key in object) { if (key !== 'timestamp') keys.push(key) } return keys.map(key => object[key] > 0) }) console.log(abc) 

但是我的代碼不會刪除0值

您可以刪除值為0的屬性。

 var array = [{ timestamp: "2017-01-18T00:00:00.000Z", "Test Bar 0": 78.09482851766388 }, { timestamp: "2017-01-18T01:00:00.000Z", "Test Bar 0": 124.09589189108233 }, { timestamp: "2017-01-18T02:00:00.000Z", "Test Bar 0": 106.97921714748477 }, { timestamp: "2017-01-18T03:00:00.000Z", "Test Bar 0": 118.7469310337081 }, { timestamp: "2017-01-18T04:00:00.000Z", "Test Bar 0": 119.81672320518294 }, { timestamp: "2017-01-18T05:00:00.000Z", "Test Bar 0": 67.39690680291541 }, { timestamp: "2017-01-18T06:00:00.000Z", "Test Bar 0": 117.67713886223325 }, { timestamp: "2017-01-18T07:00:00.000Z", "Test Bar 0": 87.72295806093751 }, { timestamp: "2017-01-18T08:00:00.000Z", "Test Bar 0": 115.53755451928356 }, { timestamp: "2017-01-18T09:00:00.000Z", "Test Bar 0": 78.09482851766388 }, { timestamp: "2017-01-18T10:00:00.000Z", "Test Bar 0": 48.14064771636815 }, { timestamp: "2017-01-18T11:00:00.000Z", "Test Bar 0": 67.39690680291541 }, { timestamp: "2017-01-18T12:00:00.000Z", "Test Bar 0": 130.5146449199314 }, { timestamp: "2017-01-18T13:00:00.000Z", "Test Bar 0": 128.37506057698172 }, { timestamp: "2017-01-18T14:00:00.000Z", "Test Bar 0": 73.81565983176449 }, { timestamp: "2017-01-18T15:00:00.000Z", "Test Bar 0": 109.11880149043446 }, { timestamp: "2017-01-18T16:00:00.000Z", "Test Bar 0": 127.30526840550688 }, { timestamp: "2017-01-18T17:00:00.000Z", "Test Bar 0": 123.02609971960748 }, { timestamp: "2017-01-18T18:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-18T19:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-18T20:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-18T21:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-18T22:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-18T23:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T00:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T01:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T02:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T03:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T04:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T05:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T06:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T07:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T08:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T09:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T10:00:00.000Z", "Test Bar 0": 0 }, { timestamp: "2017-01-19T11:00:00.000Z", "Test Bar 0": 0 }]; array.forEach(o => Object.keys(o).forEach(k => { if (k !== 'timestamp' && o[k] === 0) { delete o[k]; } })); console.log(array); 

您的keys.map錯誤:

var abc = array.forEach((object) => {
  for(key in object){
    if(key!=="timestamp"&&(object[key]==0||object[key]=="0") {
        delete object[key];
     }
    }
 });

只需使用一個簡單的filter語句

 var array = [{"timestamp":"2017-01-18T00:00:00.000Z","Test Bar 0":78.09482851766388},{"timestamp":"2017-01-18T01:00:00.000Z","Test Bar 0":124.09589189108233},{"timestamp":"2017-01-18T02:00:00.000Z","Test Bar 0":106.97921714748477},{"timestamp":"2017-01-18T03:00:00.000Z","Test Bar 0":118.7469310337081},{"timestamp":"2017-01-18T04:00:00.000Z","Test Bar 0":119.81672320518294},{"timestamp":"2017-01-18T05:00:00.000Z","Test Bar 0":67.39690680291541},{"timestamp":"2017-01-18T06:00:00.000Z","Test Bar 0":117.67713886223325},{"timestamp":"2017-01-18T07:00:00.000Z","Test Bar 0":87.72295806093751},{"timestamp":"2017-01-18T08:00:00.000Z","Test Bar 0":115.53755451928356},{"timestamp":"2017-01-18T09:00:00.000Z","Test Bar 0":78.09482851766388},{"timestamp":"2017-01-18T10:00:00.000Z","Test Bar 0":48.14064771636815},{"timestamp":"2017-01-18T11:00:00.000Z","Test Bar 0":67.39690680291541},{"timestamp":"2017-01-18T12:00:00.000Z","Test Bar 0":130.5146449199314},{"timestamp":"2017-01-18T13:00:00.000Z","Test Bar 0":128.37506057698172},{"timestamp":"2017-01-18T14:00:00.000Z","Test Bar 0":73.81565983176449},{"timestamp":"2017-01-18T15:00:00.000Z","Test Bar 0":109.11880149043446},{"timestamp":"2017-01-18T16:00:00.000Z","Test Bar 0":127.30526840550688},{"timestamp":"2017-01-18T17:00:00.000Z","Test Bar 0":123.02609971960749},{"timestamp":"2017-01-18T18:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-18T19:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-18T20:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-18T21:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-18T22:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-18T23:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T00:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T01:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T02:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T03:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T04:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T05:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T06:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T07:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T08:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T09:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T10:00:00.000Z","Test Bar 0":0},{"timestamp":"2017-01-19T11:00:00.000Z","Test Bar 0":0}]; console.log(array.filter(o => o["Test Bar 0"] > 0)); 

如果要刪除所有值為0鍵,則根本不需要過濾。 只需遍歷列表並刪除值為0任何屬性。

 var array = [{ "timestamp": "2017-01-18T00:00:00.000Z", "Test Bar 0": 78.09482851766388 }, { "timestamp": "2017-01-18T01:00:00.000Z", "Test Bar 0": 124.09589189108233 }, { "timestamp": "2017-01-18T02:00:00.000Z", "Test Bar 0": 106.97921714748477 }, { "timestamp": "2017-01-18T03:00:00.000Z", "Test Bar 0": 118.7469310337081 }, { "timestamp": "2017-01-18T04:00:00.000Z", "Test Bar 0": 119.81672320518294 }, { "timestamp": "2017-01-18T05:00:00.000Z", "Test Bar 0": 67.39690680291541 }, { "timestamp": "2017-01-18T06:00:00.000Z", "Test Bar 0": 117.67713886223325 }, { "timestamp": "2017-01-18T07:00:00.000Z", "Test Bar 0": 87.72295806093751 }, { "timestamp": "2017-01-18T08:00:00.000Z", "Test Bar 0": 115.53755451928356 }, { "timestamp": "2017-01-18T09:00:00.000Z", "Test Bar 0": 78.09482851766388 }, { "timestamp": "2017-01-18T10:00:00.000Z", "Test Bar 0": 48.14064771636815 }, { "timestamp": "2017-01-18T11:00:00.000Z", "Test Bar 0": 67.39690680291541 }, { "timestamp": "2017-01-18T12:00:00.000Z", "Test Bar 0": 130.5146449199314 }, { "timestamp": "2017-01-18T13:00:00.000Z", "Test Bar 0": 128.37506057698172 }, { "timestamp": "2017-01-18T14:00:00.000Z", "Test Bar 0": 73.81565983176449 }, { "timestamp": "2017-01-18T15:00:00.000Z", "Test Bar 0": 109.11880149043446 }, { "timestamp": "2017-01-18T16:00:00.000Z", "Test Bar 0": 127.30526840550688 }, { "timestamp": "2017-01-18T17:00:00.000Z", "Test Bar 0": 123.02609971960749 }, { "timestamp": "2017-01-18T18:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T19:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T20:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T21:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T22:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-18T23:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T00:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T01:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T02:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T03:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T04:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T05:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T06:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T07:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T08:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T09:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T10:00:00.000Z", "Test Bar 0": 0 }, { "timestamp": "2017-01-19T11:00:00.000Z", "Test Bar 0": 0 }]; array.forEach((object) => { Object.keys(object).forEach((key) => { if (object[key] === 0) { delete object[key]; } }); }); console.log(array); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM