Open ChenPt opened 6 years ago
主要是利用了toString方法和 parseInt方法来进行转换
Number.prototype.toString([radix]) 可以传入一个参数,代表要转换的进制。
利用toString来将十进制的数转换为其他进制的数。
let num = 10 num.toString(2) // 1010
parseInt(string, radix)接受两个参数,要转换成整数的字符串和字符串中的数字表示的进制。
parseInt默认字符串里的数字是十进制的。
当遇到字符串中不符合当前进制的字符时,就会停止,只将停止之前的那段字符串转化成整数(10进制)
let str = "1011aaa1010" parseInt(str, 2) // 11
遇到a时就停止了,只将1011(2)转化成十进制整数
a
1011(2)
封装了个函数用以进制转换。
//进制转换 /** * @params {string} x * @params {number} before_radix * @params {number} after_radix **/ function change(x, before_radix, after_radix) { if(typeof x !== 'string') { return new Error("first param should be a string") } if(typeof x === 'string') { if(before_radix == after_radix) { return Number(x) } if(before_radix === 10) { return Number(x).toString(after_radix) } if(before_radix !== 10) { return parseInt(x, before_radix).toString(after_radix) } } } //判断是否为整数的一个小方法.. function judgeInt(x) { if(parseFloat(x) === parseInt(x)) { return true } else { return false } }
主要是利用了toString方法和 parseInt方法来进行转换
toString
Number.prototype.toString([radix]) 可以传入一个参数,代表要转换的进制。
利用toString来将十进制的数转换为其他进制的数。
parseInt
parseInt(string, radix)接受两个参数,要转换成整数的字符串和字符串中的数字表示的进制。
parseInt默认字符串里的数字是十进制的。
当遇到字符串中不符合当前进制的字符时,就会停止,只将停止之前的那段字符串转化成整数(10进制)
遇到
a
时就停止了,只将1011(2)
转化成十进制整数封装了个函数用以进制转换。