前端智勇大闯关-第二季-第三题
10的世界
在我们的世界里,字母A很好理解
键盘兄表示65无压力
CPU表示01000001才是王道
1、题目中描述的三句话:二进制与十进制与A之间的相互转换
2、在textarea元素中包含了一长串的二进制编码(0和1的世界)
3、下图展示由二进制码转换成字母的过程
每八位一组由二进制转化十进制,由十进制找到对应的asc码,将这些asc码每四个组成一组,再转换成十进制,最后,把十进制转成成asc码,对应的字母相应的就出来了。。。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiInBnauETZmRWO1gDNkFGNmJzMxIWNiZTMkhjM2cTZlFjMwQGZfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.jpg)
4、详细代码
接下来,分析分析这个题目是怎么实现的,知道答案了,其实是一个逆过程。
目标:由字符转换成二进制码
详细代码:
提示:
1、参考w3school
fromCharCode:可接受一个指定的 Unicode 值,然后返回一个字符串。
charCodeAt:方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。
String.fromCharCode(65) ============== A
'A'.charCodeAt(0) ================= 65
2、进制之间的转换
如二进制转换成十进制
parseInt('01000001',2).toString(10) ================ 65
如十进制转换成二进制(二进制由8位组成)
("00000000"+parseInt(65,10).toString(2)).substr(-8) ============= 01000001