2016-11-29 13 views
0

Iamはcordova-local-notificationsプラグインでコードバーで作業しています。Javascriptの透明な配列が動作していましたが、突然それはありません

$('.clearbtn').click(function(){ 
     var arraylength = info.data; 
     arraylength.splice(0,arraylength.length); 
     console.log('clear',arraylength); 
    }); 

コンソールログは、アレイは何も持っていないことを私に示しています。私はクリアして、アプリケーションを再起動通知をすべて表示するときまずクリア機能は、これは私のクリア機能である...今

を働いていたがその中。それは前に働いていたが、私は知らないので、私は本当にそれを取得しないでください

$(document).on("pagebeforeshow","#all",function(){ 
     var html = ''; 

     for(var count = 0; count < info.data.length; count++){ 
      console.log(info.data); 
      var time = new Date(info.data[count][3]); 

      var addHour = time.setHours(time.getHours()); 
      var date = new Date(addHour); 
      // Hours part from the timestamp 
      var hours = date.getHours(); 
      // Minutes part from the timestamp 
      var minutes = "0" + date.getMinutes(); 
      // Will display time in 10:30:23 format 
      var formattedTime = hours + ':' + minutes.substr(-2); 

      var imgPath = 'img/icons/alert.png'; 

      html = html + "<tr><td class='img-table'><img src=" + imgPath + "></td>" + "<td><span class='time-aside'><strong>" + formattedTime + "</strong></span><h4>" + info.data[count][1] + "</h4><p>" + info.data[count][2] + "</p></td></tr>"; 
     } 

     $('.clearbtn').click(function(){ 
      var arraylength = info.data; 
      arraylength.splice(0,arraylength.length); 
      console.log('clear',arraylength); 
     }); 

     $("table#notificationTable tbody").empty(); 
     $("table#notificationTable tbody").append(html).closest("table#notificationTable").table("refresh").trigger("create"); 
    }); 

:そして、これはconsole.log(info.data)

enter image description here

の結果であり、これは、すべてのリマインダーのページですなぜそれはもはや!

+0

期待される結果は何ですか?アレイ全体でスプライスしているので、アレイ上で動作し、全体の長さにわたって作業している間にすべての要素が削除されます – Vatsal

+0

[あまり関係のないコード](http://stackoverflow.com/help/how -聞く、質問する)。 –

+0

@Vatsal予期せぬ結果は、私がそこに表示されている通知はありませんが、私はアプリを再び開くと、配列のすべての通知をクリアすることです。 – Sreinieren

答えて

0

私はlocalStorageをクリアしなければなりませんでした。なぜなら、それをlocalstorageにstringとしてプッシュするからです。関数の書き換えは次のとおりです。

$('.clearbtn').click(function(){ 
     var arraylength = info.data; 
     arraylength = 0; 
     localStorage.clear(); 
    }); 
関連する問題