問題 これ、なんですか。この、にょろにょろ。 var y = ~~(x/2); 答え ビット否定演算子(Bitwise NOT Operator)を2つ~~使うと、小数の切り捨てができる。 >>> ~~(0.8) 0 >>> ~~(1) 1 >>> ~~(1.2) 1 >>> ~~(1.5) 1 >>> ~~(1.9) 1 >>> ~~(123.456) 123 便利なのが、0へ向かって切り捨ててくれるところ(絶対値で切り捨て)。 >>> ~~(-123.456) -123 >>> ~~(-456.789) -456 素直に正負を見て関数を使い分けるとこうなるところ。長くて嫌になりますね。 //xが数値の前提で x = (x > 0) ? Math.floor(x) : Math.ceil(x); それが、~~なら、ほら!このとおり。 //xは何でもいいですよ♪ x = ~~x; 括弧をつ