试一试
function expo(x, f) {
return Number.parseFloat(x).toExponential(f);
}
console.log(expo(123456, 2));
// Expected output: "1.23e+5"
console.log(expo("123456"));
// Expected output: "1.23456e+5"
console.log(expo("oink"));
// Expected output: "NaN"
语法
js
toExponential()
toExponential(fractionDigits)
参数
fractionDigits可选-
可选。一个整数,指定小数点后的位数。默认为表示该数字所需的位数。
返回值
一个字符串,表示给定的 Number 对象以指数记法表示,小数点前有一位数字,小数点后有 fractionDigits 位数字(四舍五入)。
异常
RangeError-
如果
fractionDigits不是0到100(包含)之间的整数,则抛出错误。 TypeError-
如果此方法在非
Number对象上调用,则抛出该错误。
描述
如果省略 fractionDigits 参数,则小数点后的位数将默认为唯一表示该值所需的位数。
如果对数字字面量使用 toExponential() 方法,并且该数字字面量没有指数且没有小数点,则在方法调用前面的点(.)之前留一个或多个空格,以防止该点被解释为小数点。
如果一个数字的位数多于 fractionDigits 参数所请求的位数,则该数字将被四舍五入到由 fractionDigits 位数表示的最近的数字。有关四舍五入的讨论,请参阅 toFixed() 方法的描述,该描述也适用于 toExponential()。
示例
使用 toExponential
js
const numObj = 77.1234;
console.log(numObj.toExponential()); // 7.71234e+1
console.log(numObj.toExponential(4)); // 7.7123e+1
console.log(numObj.toExponential(2)); // 7.71e+1
console.log((77.1234).toExponential()); // 7.71234e+1
console.log((77).toExponential()); // 7.7e+1
规范
| 规范 |
|---|
| ECMAScript® 2026 语言规范 # sec-number.prototype.toexponential |
浏览器兼容性
加载中…