概要
VBScriptで記載されたコードをJavaScriptに変換する作業をしているのですが、
そこで使用されている「Datepart()」関数の挙動が私が想定していた結果と異なっており、
調査をしても回答がネット上に見当たらなかったため質問させていただきます。
詳細
## 実行環境
paiza株式会社の下記のサイトを利用しています。
https://paiza.io/ja/projects/new
検証内容
Vb
1public class compiler 2 shared function Main as integer 3' Your code here! 4 Console.WriteLine(datepart("q",New DateTime(2021, 01, 01, 20, 30, 15))) 5 Console.WriteLine(datepart("q",New DateTime(2021, 02, 02, 20, 30, 15))) 6 Console.WriteLine(datepart("q",New DateTime(2021, 03, 01, 20, 30, 15))) 7 Console.WriteLine(datepart("q",New DateTime(2021, 04, 01, 20, 30, 15))) 8 Console.WriteLine(datepart("q",New DateTime(2021, 05, 01, 20, 30, 15))) 9 Console.WriteLine(datepart("q",New DateTime(2021, 06, 01, 20, 30, 15))) 10 Console.WriteLine(datepart("q",New DateTime(2021, 07, 01, 20, 30, 15))) 11 Console.WriteLine(datepart("q",New DateTime(2021, 08, 01, 20, 30, 15))) 12 Console.WriteLine(datepart("q",New DateTime(2021, 09, 01, 20, 30, 15))) 13 Console.WriteLine(datepart("q",New DateTime(2021, 10, 01, 20, 30, 15))) 14 Console.WriteLine(datepart("q",New DateTime(2021, 11, 01, 20, 30, 15))) 15 Console.WriteLine(datepart("q",New DateTime(2021, 12, 01, 20, 30, 15))) 16 return 0 17 End function 18end class
実行結果----------------------------------------------------------------
1
2
2
2
2
2
3
3
3
4
4
4
想定していた結果
Console.WriteLine(datepart("q",New DateTime(2021, 02, 02, 20, 30, 15))) '→1 Console.WriteLine(datepart("q",New DateTime(2021, 03, 01, 20, 30, 15))) '→1
参考サイト
上記のコードの実行結果は'1'となると思っていました。
この実行結果となる理由を教えていただきたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。