Binary Agents(二进制值转换字符串)

题目:

传入二进制字符串,翻译成英语句子并返回。

二进制字符串是以空格分隔的。

代码:

 1 function binaryAgent(str) {
 2   var arr = str.split(' ');
 3   for (var i = 0; i < arr.length; i++) {
 4     arr.splice(i,1,String.fromCharCode(BtoD(arr[i])));
 5   }
 6   return arr.join('');
 7 }
 8 //函数:二进制转换为十进制
 9 function BtoD(val) {
10   var arr = val.split('');
11   arr = arr.reverse();
12   for (var i = 0; i < arr.length; i++) {
13     //每位上的数字乘以2的i次方
14     var n = Math.pow(2,i);
15     arr.splice(i,1,arr[i]*n);
16   }
17   return arr.reduce(function(acc,val){return acc+val;});
18 }

 

posted @ 2017-05-02 23:49  hiker90  阅读(438)  评论(0编辑  收藏  举报