以下语句会如何输出? 022 - 017 // 3,18 - 15 = 3 018 - 045 // -19,18 - 37 = -19 在 JS 中,在 Number 类型前加 0 会转换为 8 进制,如果原来的值位上有大于 8 的数,则不会进行转换。 在 JS 中,有几种方法来进行进制转换,但只能通过 10 进制中转,即 10 进制转其他进制或者其他进制转 10 进制。 // 0x 表示十六进制,但是 js 会强制转换为十进制来运算,0xa == 10 var a = 0xa; // 0 开头表示八进制,同样强制转换为十进制来运算 010 = 8 var b = 010; // Number.parseInt 方法把字符串(只能由字母和数字组成)由低进制转高进制,如二进制转八进制,但是八进制不能转二进制,radix 表示进制,取值 2~36,返回一个字符串。 Number.parseInt(string,radix) Number.parseInt('0101',2) // 5 Number.parseInt('0101',8) // 65 // Number.toString 方法将十进制数字转换为任意进制的字符串形式,同样,radix 表示进制,取值 2~36 Number.toString(radix) (10).toString(2) //"1010" 转 2 进制 (10).toString(8) //"12" 转 8 进制 (10).toString(16) //"a" 转 16 进制 (1000).toString(36) //"rs" 转 36 进制