BigInt.prototype.toString()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2020å¹´9æ.
toString() 㯠BigInt å¤ã®ã¡ã½ããã§ãæå®ããé·æ´æ° (BigInt) å¤ã表ãæååãè¿ãã¾ããæ«å°¾ã® "n" ã¯æååã®ä¸é¨ã«ã¯ãªãã¾ããã
試ãã¦ã¿ã¾ããã
console.log(1024n.toString());
// äºæ³ãããçµæ: "1024"
console.log(1024n.toString(2));
// äºæ³ãããçµæ: "10000000000"
console.log(1024n.toString(16));
// äºæ³ãããçµæ: "400"
æ§æ
toString()
toString(radix)
弿°
radixçç¥å¯-
2 ãã 36 ã¾ã§ã®æ´æ°ã§ãé·æ´æ°ã®è¡¨ç¾ã«ä½¿ç¨ããåºæ°ãæå®ãã¾ããããã©ã«ã㯠10 ã§ãã
è¿å¤
æå®ãã BigInt ãªãã¸ã§ã¯ãã表ãæååã
ä¾å¤
RangeError-
toString()ã« 2 æªæºã¾ã㯠36 ãã大ããªåºæ°ãä¸ããããå ´åã
解説
BigInt ãªãã¸ã§ã¯ã㯠Object ã® toString() ã¡ã½ããããªã¼ãã¼ã©ã¤ããã¾ããã¤ã¾ãã Object.prototype.toString() ãç¶æ¿ãã¾ããã BigInt ãªãã¸ã§ã¯ãã§ã¯ãtoString() ã¡ã½ããã¯æå®ãããåºæ°ã«ãããªãã¸ã§ã¯ãã®æåå表ç¾ãè¿ãã¾ãã
10 ãã大ããªåºæ°ãæå®ãããå ´åã¯ã 9 ãã大ããªæ°åãã¢ã«ãã¡ãããã§ç¤ºãã¾ããä¾ãã°ã16 鲿°ï¼åºã 16ï¼ã§ã¯ a ãã f ã使ç¨ããã¾ãã
æå®ãããé·æ´æ°å¤ãè² ã®å ´åã符å·ã¯ä¿æããã¾ããåºæ°ã 2 ã®å ´åã§ãåæ§ã§ããè¿ãããæååã¯ãé·æ´æ°å¤ã® 2 鲿°è¡¨ç¾ã« - 符å·ãä»å ãããã®ã§ãããé·æ´æ°å¤ã® 2 ã®è£æ°ã§ã¯ããã¾ããã
toString() ã¡ã½ããã¯ããã® this å¤ã BigInt ããªããã£ãã¾ãã¯ã©ããã¼ãªãã¸ã§ã¯ãã§ããå¿
è¦ãããã¾ããä»ã® this å¤ã«å¯¾ãã¦ã¯ãé·æ´æ°å¤ã¸ã®å¼·å¶å¤æã試ã¿ããã¨ãªã TypeError ãçºçãã¾ãã
BigInt ã«ã¯ [Symbol.toPrimitive]() ã¡ã½ããããªããããJavaScript 㯠BigInt ãªãã¸ã§ã¯ããæååã®ã³ã³ããã¹ãã§ä½¿ç¨ãããéã«èªåçã« toString() ã¡ã½ãããå¼ã³åºãã¾ããã¡ã½ãããæããªããããJavaScript 㯠BigInt ãªãã¸ã§ã¯ã ãæååãæå¾
ããã³ã³ããã¹ãï¼ãã³ãã¬ã¼ããªãã©ã«ãªã©ï¼ã§ä½¿ç¨ãããéã«ãèªåçã« toString() ã¡ã½ãããå¼ã³åºãã¾ãããã ããBigInt ã®ããªããã£ãå¤ã¯ãæååã¸ã®å夿ãè¡ãéã« toString() ã¡ã½ãããåç
§ãã¾ããã代ããã«ãæåã® toString() å®è£
ã¨åãã¢ã«ã´ãªãºã ãç¨ãã¦ç´æ¥å¤æããã¾ãã
BigInt.prototype.toString = () => "Overridden";
console.log(`${1n}`); // "1"
console.log(`${Object(1n)}`); // "Overridden"
ä¾
>toString() ã®ä½¿ç¨
17n.toString(); // "17"
66n.toString(2); // "1000010"
254n.toString(16); // "fe"
(-10n).toString(2); // "-1010"
(-0xffn).toString(2); // "-11111111"
BigInt ã«ãããè² ã® 0
æ´æ°ã«è² ã® 0 ãåå¨ããªãã®ã¨åæ§ã«ãBigInt ã«ã¯è² ã® 0 ãããã¾ããã -0.0 㯠JavaScript ã®æ°å¤åï¼Numberï¼ã«ã®ã¿ç¾ãããIEEE æµ®åå°æ°ç¹æ°ã®æ¦å¿µã§ãã
(-0n).toString(); // "0"
BigInt(-0).toString(); // "0"
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-bigint.prototype.tostring> |