Number.prototype.toExponential()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015å¹´7æ.
toExponential() 㯠Number å¤ã®ã¡ã½ããã§ããã®æ°å¤ãææ°è¡¨è¨ã§è¡¨ããæååãè¿ãã¾ãã
試ãã¦ã¿ã¾ããã
function expo(x, f) {
return Number.parseFloat(x).toExponential(f);
}
console.log(expo(123456, 2));
// äºæ³ãããçµæ: "1.23e+5"
console.log(expo("123456"));
// äºæ³ãããçµæ: "1.23456e+5"
console.log(expo("oink"));
// äºæ³ãããçµæ: "NaN"
æ§æ
toExponential()
toExponential(fractionDigits)
弿°
fractionDigitsçç¥å¯-
ãªãã·ã§ã³ã§ããå°æ°ç¹ã®å¾ã®æ¡æ°ãæå®ããæ´æ°ã§ãã æ¢å®å¤ã¯ãã®æ°ã表ãã®ã«å¿ è¦ãªæ°ã®æ¡ã§ãã
è¿å¤
Number ãªãã¸ã§ã¯ãããææ°è¡¨è¨ (å°æ°ç¹å㯠1 æ¡ãå°æ°ç¹ã®å¾ã¯ fractionDigits ã«ãã£ã¦æå®ãããæ¡ã§åãæ¨ã¦) ã§è¡¨ããæååã§ãã
ä¾å¤
RangeError-
fractionDigitsã0以ä¸100以ä¸ã§ã¯ãªãå ´åã«çºçãã¾ãã TypeError-
ãã®ã¡ã½ããã
Numberã§ã¯ãªããªãã¸ã§ã¯ãã«å¯¾ãã¦å¼ã³åºãããå ´åã«çºçãã¾ãã
解説
fractionDigits 弿°ãçç¥ãããå ´åãå°æ°ç¹ã®å¾ã®æ¡æ°ã¯ããã®å¤ãç¹å®ããã®ã«å¿
è¦ãªæ¡æ°ã«ãªãã¾ãã
toExponential ã¡ã½ããã 1 ã¤ã®æ°å¤ãªãã©ã«ãã¾ãã¯ãææ°ãå°æ°ç¹ããªãæ°å¤ãªãã©ã«ã«å¯¾ãã¦ä½¿ç¨ããå ´åãããããå°æ°ç¹ã¨ãã¦è§£éããããã¨ãé²ãããã«ãã¡ã½ããå¼ã³åºãã«å
ç«ã¤ãããã®åã«ç©ºç½ãç½®ãã¦ãã ããã
弿° fractionDigits ã§æå®ãããæ¡ãããå¤ãã®æ¡ãæã£ã¦ããæ°ã®å ´åããã®æ°ã¯ãfractionDigits ã®æ¡ã§è¡¨ããã¨ãã§ããæãè¿ãæ°ã§è¡¨ããã¾ããtoFixed() ã¡ã½ããã®èª¬æã«ãããæ¦æ°è¡¨ç¾ã®èª¬æãåç
§ãã¦ãã ãããããã¯ãtoExponential ã¡ã½ããã«ãé©ç¨ããã¾ãã
ä¾
>toExponential ã®ä½¿ç¨
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 ã¨è¡¨ç¤º
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-number.prototype.toexponential> |