{
"$type": "site.standard.document",
"canonicalUrl": "https://blog.nove-b.dev//posts/round-to-n-multiple",
"path": "/posts/round-to-n-multiple",
"publishedAt": "2022-01-19T00:00:00.000Z",
"site": "at://did:plc:2atly2y5kfyjcj5zap6pv4wd/site.standard.publication/3mmxeqr2tcb2k",
"tags": [
"javascript",
"プログラミング",
"技術公開"
],
"textContent": "特定の倍数に数値をまとめたい。\n\nなにをいっているのだろうと思われたかもしれないので、実例をどうぞ。\n\n実例\n\nユーザーが数値を入れるインプットエリアがあるとする。\n\nユーザーは任意の数字を入れることができる。\n\nその結果を10の倍数にまとめたい。\n\nつまり、24とユーザーが記入した場合は「20」が期待値になる。\n\nということがやりたい。\n\n実装方法\n\nじゃ、どうするのか。\n\nまずは実装済みのものをどうぞ↓(うまくコンパイルできない時があるので、下の更新ボタンをクリックしてください)\n\n<iframe style=\"width: 100%; height: 500px; border: 0; border-radius: 4px; overflow: hidden;\" src=\"https://codesandbox.io/embed/floral-field-fiof9?fontsize=14&hidenavigation=1&theme=dark&view=preview\" title=\"floral-field-fiof9\" allow=\"accelerometer; ambient-light-sensor; camera; encrypted-media; geolocation; gyroscope; hid; microphone; midi; payment; usb; vr; xr-spatial-tracking\" sandbox=\"allow-forms allow-modals allow-popups allow-presentation allow-same-origin allow-scripts\"></iframe>\n\ninputエリアに数字を入れていくと、5で10、14で10、15で20になっていることが確認できる。\n\nつまり24と入力すれば「20」が表示される、期待値通り。\n\n特定の倍数に数値をまとめるコード\n\ninputエリアのvalueが更新された時、\n\nまずはvalueを丸める。\n\nつまり、2は0、5は10になる。\n\nその値を最初に定義した値(丸めたい倍数)で計算する。\n\n実際に24が入力された時、\n\n24を丸めて20にする。\n\nその値を10で割って10でかける。\n\n結果20になる。\n\nなんかこうやってみるともっと簡単な方法がある?\n\nまあ、期待値は取り出せたので、良しとする。\n\n理系の人、ぜひ教えてください。",
"title": "n の倍数で数値を丸める"
}