小数部を取り出す
概要
与えられた数値から小数部だけを取り出し、数値として返却する。
たとえば 123.456
を与えると 0.456
が返る。
コード例(文字列に変換)
function getDecimalPart(v: number): number {
let str = v.toString();
str = str.split(".")[1];
const num = parseFloat("0." + str);
return num;
}
console.log(getDecimalPart(12.3456789)); // 0.3456789
対象値を文字列に変換後、小数点の右側にある小数部を取り出し、数値に変換して返却する。
コード例(1 で割った余りを取る)
let n = 12.3456789;
n = Math.abs(n); // 符号をとる
console.log(n % 1); // 0.34567889999999935
1 で割った余りで小数部を取りだす方法。
値が負数の場合もあるので、前もって絶対値関数で符号を外しておく。
コード例(値の整数部を引く)
let n = 12.3456789;
n = Math.abs(n); // 符号をとる
console.log(n - Math.floor(n)); // 0.34567889999999935
値から値の整数部を引くことで小数部を取り出す方法。
値が負数の場合で床関数を実行すると整数部の値が変わる可能性があるので、前もって絶対値関数で符号を外しておく。