题目
传入二进制字符串,翻译成英语句子并返回。二进制字符串是以空格分隔的。如果你被卡住了,记得开大招 Read-Search-Ask。尝试与他人结伴编程、编写你自己的代码。这是一些对你有帮助的资源:
String.charCodeAt()
String.fromCharCode()
思路
- 题目有提示使用 String.fromCharCode() 是将数字转成字母;
- 但String.fromCharCode() 只能将十进制的数字转为字母,题目传入的是二进制的数字;
- 所以还要想办法将二进制转为十进制,百度了一下有这个函数:
![](https://img.haomeiwen.com/i8143103/99be18ee2990ae7e.png)
- 因此步骤是先将元素拆分为数组,然后将数组的每个值转成十进制,再讲十进制数字转为字母,最后将数组拼接为字符;
解答
function binaryAgent(str) {
var arr = str.split(' ');
var temp = [];
for (var i=0;i<arr.length;i++){
temp.push(String.fromCharCode(parseInt(arr[i],2)));
}
return temp.join('');
}
binaryAgent("01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111");
网友评论