用Math.pow函数进行八进制转换成十进制
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<title>Document</title>
</head>
<body>
<h3>
完成一个八进制转换成十进制的函数(convert(123,8):表示把8进制123转成10进制(难)
</h3>
</body>
</html>
<script>
var m = window.prompt('输入八进制数(0~7组成)');
var arr1 = [];
var x = 0;
function cont() {
for (var j = 0; Math.pow(10, j) > m || m >= Math.pow(10, j + 1); j++) {
if (Math.pow(10, j + 1) <= m && m < Math.pow(10, j + 2)) {
for (var i = 0; i <= j + 1; i++) {
var n = parseInt(m);
arr1[i] = parseInt(n / Math.pow(10, i)) % 10;
x += arr1[i] * Math.pow(8, i);
}
document.write(m + '转八进制为' + x);
}
}
console.log(arr1);
}
cont();
</script>
目前来说没有bug,小小测试一下…