こんな感じでどうでしょうか。
function image4() { dd = new Date(); mm = dd.getMonth()+1; dt = dd.getDate(); if ((mm == 1)||(mm == 2 && dt <= 5)) {s=1;} if ((mm == 2 && dt >= 6)||(mm == 3 && dt <= 19)) {s=2;} // ... document.writeln("<img src=\"./image/top_img_"+s+".jpg\">"); }
こんな感じでどうでしょう。
#都合上、結果はalertで出すようにしてます。
http://jsfiddle.net/MC3UJ/
var period = { "1/1": "1", "2/6": "2", "3/16": "3", "5/31": "4", "6/2": "5" }; var dd = new Date(); var year = dd.getFullYear(); dd = dd.getTime(); var list = []; for (var d in period) { list.push({ d: Date.parse(year + "/" + d), s: period[d] }); } list.sort(function (a, b) { return b.d - a.d; }); var s = ""; for (var i = 0; i < list.length; i++) { if (dd >= list[i].d) { s = list[i].s; break; } } document.writeln("<img src=\"./image/top_img_" + s + ".jpg\">");