数値から「0.」XXX%を取り除いてパーセントにするための最良の方法は何ですか?数値がintの場合はどうなりますか?
var number1 = 4.954848;
var number2 = 5.9797;
$(document).ready(function() {
final = number1/number2;
alert(final.toFixed(2) + "%");
});
数値から「0.」XXX%を取り除いてパーセントにするための最良の方法は何ですか?数値がintの場合はどうなりますか?
var number1 = 4.954848;
var number2 = 5.9797;
$(document).ready(function() {
final = number1/number2;
alert(final.toFixed(2) + "%");
});
回答:
割合は次のとおりです。
(number_one / number_two) * 100
特別なものは何も必要ありません。
var number1 = 4.954848;
var number2 = 5.9797;
alert(Math.floor((number1 / number2) * 100)); //w00t!
Math.floor
?じゃないMath.round
?あなたの例でさえ、あなたのコード出力より4.954848 / 5.9797
近いです。83%
82%
~~
非常に読みにくくよりMath.floor
最良の解決策en
は、英語のロケールです。
fraction.toLocaleString("en", {style: "percent"})
fraction.toLocaleString("en", { style: "percent", minimumFractionDigits: 2 })
see stackoverflow.com/a/29773435/411428
まあ、もしあなたがそのような数を0.123456
パーセンテージを与えるための除算の結果であるなら、それを100で掛けて、それからそれを丸めるかtoFixed
、あなたの例のように使ってください。
Math.round(0.123456 * 100) //12
これを行うためのjQueryプラグインを次に示します。
jQuery.extend({
percentage: function(a, b) {
return Math.round((a / b) * 100);
}
});
使用法:
alert($.percentage(6, 10));
jQuery.round
、jQuery.divide
そしてjQuery.multiply
Numeral.jsは私が作成したライブラリで、数値、通貨、パーセンテージをフォーマットでき、ローカリゼーションをサポートしています。
numeral(0.7523).format('0%') // returns string "75%"
numeral.js
2017年3月27日でした。ライブラリは完全(欠陥なし)であるか、または積極的に保守されていません。2019年1月28日の時点で、このプロジェクトには135の未解決の問題があり、最も古いものは2012年11月のものです。約2年間にコミットされていない未解決の問題の数は、プロジェクトの世話がなくなったことを示しています。そうでなければ納得して幸せです。
ほとんどの回答は、末尾に「%」を追加することを推奨しています。私はむしろ好むだろうIntl.NumberFormat()
と{ style: 'percent'}
var num = 25;
var option = {
style: 'percent'
};
var formatter = new Intl.NumberFormat("en-US", option);
var percentFormat = formatter.format(num / 100);
console.log(percentFormat);
@xtremの答えは良いですが、toFixed
とmakePercentage
は一般的な使用法だと思います。2つの関数を定義すると、どこでもそれを使用できます。
const R = require('ramda')
const RA = require('ramda-adjunct')
const fix = R.invoker(1, 'toFixed')(2)
const makePercentage = R.when(
RA.isNotNil,
R.compose(R.flip(R.concat)('%'), fix, R.multiply(100)),
)
let a = 0.9988
let b = null
makePercentage(b) // -> null
makePercentage(a) // -> 99.88%