BigInt.prototype.toString()
åºçº¿
广æ³å¯ç¨
èª 2020å¹´9æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
toString() æ¹æ³è¿åä¸ä¸ªå符串ï¼è¡¨ç¤ºæå® BigInt 对象ãåé¢ç "n" 䏿¯å符串çä¸é¨åã
å°è¯ä¸ä¸
console.log(1024n.toString());
// Expected output: "1024"
console.log(1024n.toString(2));
// Expected output: "10000000000"
console.log(1024n.toString(16));
// Expected output: "400"
è¯æ³
bigIntObj.toString([radix])
åæ°
radixå¯é-
å¯éï¼ä»äº 2 å° 36 ä¹é´çæ´æ°ï¼æå®ç¨äºè¡¨ç¤ºæ°å¼çåºæ°ã
è¿åå¼
表示æå® BigInt 对象çå符串ã
å¼å¸¸
RangeError-
妿
toString()çåºæ°å°äº 2 æå¤§äº 36, åæåºRangeErrorã
æè¿°
BigInt 对象éå Object 对象ç toString() æ¹æ³ï¼å®ä¸ç»§æ¿ Object.prototype.toString()ãå¯¹äº BigInt 对象ï¼toString() æ¹æ³è¿åæå®åºæ°ä¸å¯¹è±¡çå符串表示形å¼ã
toString() æ¹æ³è§£æå
¶ç¬¬ä¸ä¸ªåæ°ï¼å¹¶å°è¯è¿åæå®åºæ° (base) çå符串表示形å¼ã对äºå¤§äº 10 çåæ°ï¼ä½¿ç¨åæ¯è¡¨ä¸çåæ¯è¡¨ç¤ºå¤§äº 9 çæ°åãä¾å¦ï¼å¯¹äºåå
è¿å¶æ°ï¼ä»¥ 16 ä¸ºåºæ°ï¼ï¼ä½¿ç¨ a å° fã
å¦ææªæå®åºæ°ï¼ååå®é¦éåºæ°ä¸º 10ã
妿 bigIntObj 为è´ï¼åä¿ç符å·ãå³ä½¿åºæ°æ¯ 2ï¼æ
åµä¹æ¯å¦æ¤ï¼è¿åçåç¬¦ä¸²æ¯ bigIntObj çæ£äºè¿å¶è¡¨ç¤ºï¼å颿¯ä¸ä¸ª - 符å·ï¼è䏿¯ bigIntObj ç两个补ç ã
示ä¾
>Using toString
17n.toString(); // '17'
66n.toString(2); // '1000010'
254n.toString(16); // 'fe'
-10n.toString(2); // -1010'
-0xffn.toString(2); // '-11111111'
Negative-zero BigInt
没æè´é¶ BigIntï¼å ä¸ºæ´æ°ä¸æ²¡æè´é¶ã-0.0 æ¯ä¸ä¸ª IEEE æµ®ç¹æ¦å¿µï¼åªåºç°å¨ JavaScript Number ç±»åä¸ã
(-0n).toString(); // '0'
BigInt(-0).toString(); // '0'
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-bigint.prototype.tostring> |