Sử dụng Javascript, tôi muốn làm tròn một số được người dùng chuyển đến gần nhất 10. Ví dụ: nếu 7 được chuyển, tôi sẽ trả về 10, nếu chuyển 33, tôi sẽ trả về 30.
Câu trả lời:
Chia số cho 10, làm tròn kết quả và nhân lại với 10:
var number = 33;
console.log(Math.round(number / 10) * 10);
Math.round(x / 10) * 10
Ở đâu i là một int.
Để làm tròn xuống bội số gần nhất của 10 tức là
11 trở thành 10
19 trở thành 10
21 trở thành 20
parseInt(i / 10, 10) * 10;
Làm tròn đến bội số gần nhất của 10 tức là
11 trở thành 20
19 trở thành 20
21 trở thành 30
parseInt(i / 10, 10) + 1 * 10;
Tôi cần một cái gì đó tương tự, vì vậy tôi đã viết một hàm. Tôi đã sử dụng hàm để làm tròn số thập phân ở đây và vì tôi cũng sử dụng nó để làm tròn số nguyên, nên tôi cũng sẽ đặt nó làm câu trả lời ở đây. Trong trường hợp này, chỉ cần chuyển số bạn muốn làm tròn và sau đó là 10, số bạn muốn làm tròn.
function roundToNearest(numToRound, numToRoundTo) {
return Math.round(numToRound / numToRoundTo) * numToRoundTo;
}
.25, bạn có thể chỉ cần sử dụng .25làm đối số thứ hai. Nếu bạn sử dụng các công thức trong các câu trả lời khác, bạn phải sử dụng 4làm đối số thứ hai khi bạn muốn làm tròn .25, điều này là phản trực quan.
.25như là đối số thứ 2 - Tôi đã làm cho nó thành một chức năng lótfunction roundTo(x,y){return Math.round(x / y) * y}
Math.floor, nếu bạn muốn ngăn chặn làm tròn lên