题解 | #二进制转换#

二进制转换

https://www.nowcoder.com/practice/4123561150114d119ba41f28219a454f

{"html":"<!DOCTYPE html>\n<html>\n\n<head>\n    <meta charset=\"UTF-8\">\n    <style>\n       /* 填写样式 */\n    </style>\n</head>\n\n<body>\n    <!-- 填写标签 -->\n    <script type=\"text/javascript\">\n        // 填写JavaScript\n        function base10(str) {\n           if(!isNaN(str)){\n            return parseInt(str,2)\n           }else{\n            // 例如1101001.011010调用split()方法\n            // 被切割成[\"1101001\",\"011010\"]\n            const tempVal = str.toString().split(\".\")\n            // 将数组的第一个元素1101001即整数部分转化为十进制\n            const parVal = tempVal[0]\n            const decNum = parseInt(parVal,2)\n            // 将数组的第二个元素011010小数部分转化为十进制数\n            const binaryFloatPartArr = tempVal[1].split(\"\") //将其转换为数组,以便调用数组特有的方法\n            const eachDecimalFloatPartNum = binaryFloatPartArr.map((currentValue, index) => {\n        return Number(currentValue) * Math.pow(2, (-(index + 1)))\n    })\n\n            // 每一次运行 reducer 会将先前元素的计算结果作为参数传入,最后将其结果汇总为单个返回值。\n            const deciamlFloatPartNum = eachDecimalFloatPartNum.reduce((accumulator, currentValue)=>{return accumulator + currentValue })\n               return deciamlFloatPartNum + decNum\n           }\n}\n    </script>\n</body>\n\n</html>","css":"","js":""}

全部评论

相关推荐

程序员小假:人才
点赞 评论 收藏
分享
03-30 19:30
石家庄学院 Java
野蛮的柯基在游泳:都能入股了,还得是Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务