ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript の楽しい質問: 今は何世紀ですか?
数値で表現された年を入力し、それらが属する世紀を返します。
たとえば、2016 年は 21 世紀であることに疑いの余地はなく、私たちはそれを 21 世紀として記録します。
これらの年はすべて4桁の数値列なので、確認する必要はありません。
以下にいくつかの例を示します:
Input: 1999 Output: 20th Input: 2011 Output: 21st Input: 2154 Output: 22nd Input: 2259 Output: 23rd Input: 1124 Output: 12th Input: 2000 Output: 20th
まず第一に、年を世紀に変換する方法を観察してみましょう。
少し考えてみると、年を 100 で割って切り上げれば世紀が得られると考えることができます。
でも、もう一つ疑問があって、世紀以降の「st」「nd」「rd」「th」はどうすればいいのでしょうか?
ペンと白い紙を使っていくつかの統計をとれば、次のパターンが見つかります:
20 世紀以前では、たとえば、10 番目、11 番目、12 番目...20 番目はすべて th を加えます。
20 世紀以降、21、31、41... など、10 で均等に割って 1 になる世紀は st に追加されます。10 で均等に割って 2 になる世紀は nd に追加されます。 10 で均等に分割された世紀が 3 世紀のスコアに追加され、rd が追加されます。
20世紀以降の他の世紀では、thが追加されます。
そこで、この統計のロジックをコードに書きました:
function whatCentury(year){ var century = Math.ceil(year / 100); if(century <= 20){ century += "th"; } else{ if(century % 10 == 1){ century += "st"; } else if(century % 10 == 2){ century += "nd"; } else if(century % 10 == 3){ century += "rd"; } else{ century += "th"; } } return century; }
上記は JavaScript の楽しい質問です: 今は何世紀ですか?関連コンテンツの詳細については、PHP 中国語 Web サイト (www.php.cn) に注目してください。