2016-10-20 9 views
0

ベストプラクティスではありませんが、タイプとdatetimeを含むオブジェクトの配列を格納することをお勧めします。私は、メールを送信するためにそれを使用し、私は迷惑メールにしたいが、そうタイプのみ15分ごとにメールを送信制限いけない:グローバル変数からリストを読み込んで保存する

var sendMail = true; 

var emailType = "test" // set for test 

var log = [] 
var tempLog = global.get("emaillog") 

// read the log from global variables 
if (typeof tempLog !== 'undefined' && tempLog) 
{ 
    log = tempLog 
} 

// search the log 
for (var i = 0, len = log.length; i < len; i++) 
{ 
    var logElement = log[i] 
    var logElementEmailType = logElement.Type 
    var logElementEmailDateTime = logElement.DateTime 

    var dif = new Date() - logElementEmailDateTime; 

    if (logElementEmailType == emailType && Math.abs(dif/1000) < (60*5)) 
    { 
     sendMail = false 
    } 
} 

// add to log 
var newLogElement = 
{ 
    DateTime: new Date(), 
    Type: mailType 
} 

log.push(newLogElement) 

// save global variable 
global.set("maillog",log) 

しかし、これは動作しない、ハード私をスパム:D

+0

何が動作していないのですか? – abdulbarik

答えて

1

私はdifがミリ秒単位であると信じています。これを1000で割ってマイクロ秒を取得します。

関連する問題