犬ターネット

期間がかぶってたらエラーにする

2013-09-14 javascript

仕事でちょっと悩んでたこういう処理があって、

// こんな感じで開始日と終了日の二次元配列が渡されてくるんだけど、
var list = [
  [ 20130910, 20130915 ], 
  [ 20130916, 20130920 ],
  [ 20130918, 20130923 ]
];

// かぶってる期間があったらにエラーにしたい。
// 上の例だと2個めと3個めの期間が被ってるからエラー。
if ( isDupulicate( list ) ) {
  alert( '期間がかぶってます!' )
}

function isDupulicate( list ) {
  // ここにいい感じのロジック書きたい...
  return false;
}

思いつくままに、ゴリゴリかいたのがこんなの。

BETWEEN ができないから結局力技になっちゃうんだけど、なんかもっとうまく書けないだろうか。


YOUNG LIZARD! EXTRUDERS!! GOMNUPERS!!!

Just Fucking Do It