2016-03-30 5 views
0

日付のリストをテキストに変換しようとしています。ここで私はいくつかの例を与えるつもりだ:日付のリストをテキストに変更する

1)日付(一覧DD/MM/YY):

31/03/2016 
    06/04/2016 
    13/04/2016 
    20/04/2016 
    27/04/2016 

は、私のようなテキストには、このリストを変更したい:からの週の毎週水曜日2016年3月31日2016年4月27日に

2)日付の一覧(DD/MM/YY):私はのようなテキストには、このリストを変更したい

01/01/2017 
01/02/2017 
01/01/2018 
01/02/2018 
01/01/2019 
01/02/2019 
01/01/2020 
01/02/2020 

:1 2011年1月1日から2011年1月1日まで

このタスクを実行するには、スクリプトまたはプラグインをjqueryで共有してください。

ありがとう

+1

これは、リストのどのようなタイプですか?これはcsvファイルですか、それともプレーンテキストですか? または単一の文字列値ですか? – John

+2

日付はかなり手早くすることができます。私はそれらを本当にうまく扱う[Moment.js](http://momentjs.com/)のようなライブラリを使うことをお勧めします。 –

+0

@Johnこれらの日付が配列であると仮定できます。 –

答えて

0

これは、必要な出力を提供する素晴らしい機能です。 関数に2つの引数:arraytextを与えてください。 メッセージは返され、必要に応じて保存または印刷できます。

var arr1 = ["31/03/2016", "06/04/2016", "13/04/2016", "20/04/2016", "27/04/2016"]; 
 
var arr2 = ["01/01/2017", "01/02/2017", "01/01/2018", "01/02/2018", "01/01/2019", "01/02/2019", "01/01/2020", "01/02/2020"]; 
 
var infoText1 = "Every Wednesday of Week from "; 
 
var infoText2 = "1st day of 1st and 2nd month of each year from "; 
 

 
function showMessage(array, text) { 
 
    var newArr = []; 
 
    array.forEach(function(e, i) { 
 
    tmpArr = array[i].split("/"); 
 
    tmpArr.unshift(tmpArr[1]); 
 
    tmpArr.splice(2, 1); 
 
    newArr.push(tmpArr.join("/")); 
 
    }) 
 
    return text + newArr.shift() + " to " + newArr.pop(); 
 
} 
 

 
var message = showMessage(arr1, infoText1) // <-- this is your output 
 

 
document.write(message); // just to test the output

+0

ちょっと@ジョン、あなたの答えをありがとうが、私はまた、週の名前や数ヶ月の動的を作りたいと思う。水曜日の場合と同様に、別の日(火曜日、月曜日など)になる可能性があります。または日:(1,2)、(5,6,7,8)のような別の日にすることができます。それは理にかなっていますか? –

+0

しかし、必要に応じてテキストと配列を変更することができます。 関数にテキストまたは配列を渡すだけで、希望のパターン が吐き出されます。 必要に応じてinfoText1などを変更することができます。 – John

関連する問題