22

Math.Floor()VBA に相当する JavaScript は何ですか? この関数は、小数点以下の桁数をすべて削除し、整数のみを返す必要があります。

4

5 に答える 5

34

私が覚えているのは、Int() 関数を使用することです。元

int(2.99) = 2 ; int(2.1)=2

等々。

于 2012-05-17T08:18:21.070 に答える
5

CInt() は実際には数値を丸めますが、Int() は丸めないことに注意してください。

CInt(1.6) ~~ 2
Int(1.6) ~~ 1
于 2015-05-08T10:21:36.747 に答える
4

これはRound()

Sub Sample()
    Dim dval As Double
    dval = 1.12345

    Debug.Print Round(dval, 0)
End Sub

0上記は、必要な小数点以下の桁数を指定します。

編集:

アルビ・パトジは正しい。のequivalentMath.Floor()ですint()。小数を除いた数値を返したいだけだという印象を受けました。しかし、私はhttp://www.w3schools.com/jsref/jsref_floor.aspを調べました

floor() メソッドは、数値を最も近い整数に丸め、結果を返します。

'~~> JavaScript floor() Method
'var a=Math.floor(0.60);    ~~> 0
'var b=Math.floor(0.40);    ~~> 0
'var c=Math.floor(5);       ~~> 5
'var d=Math.floor(5.1);     ~~> 5
'var e=Math.floor(-5.1);    ~~> -6
'var f=Math.floor(-5.9);    ~~> -6

Sub Sample()
    Dim dval(5) As Double, i As Long

    dval(0) = 0.6: dval(1) = 0.4: dval(2) = 5
    dval(3) = 5.1: dval(4) = -5.1: dval(5) = -5.9

    For i = LBound(dval) To UBound(dval)
        Debug.Print Round(dval(i), 0); " ~~ "; Int(dval(i))
    Next
End Sub

結果

ROUND() ~~ INT()

1 ~~ 0

0 ~~ 0

5 ~~ 5

5 ~~ 5

-5 ~~ -6

-6 ~~ -6

于 2012-05-17T08:19:11.210 に答える