javascript - 我尝试使用此解决方案将二进制数转换为句子“篝火不好玩吗!?” 但在这句话出现'未定义'之前。怎么能去掉这个?
问题描述
function binaryAgent(str) {
let arr = str.split(' ');
var digit = [];
var newStr;
for (var i = 0; i < arr.length; i++) {
digit.push(parseInt(arr[i], 2));
}
for (let j = 0; j < digit.length; j++) {
newStr += String.fromCharCode(digit[j]);
}
return newStr;
}
console.log(
binaryAgent(
'01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111',
),
);
输出:'undefinedAren's not bonfires fun!?'
期望输出:'篝火不好玩吗!?'
解决方案
您只需要初始化newStr
为一个空字符串
function binaryAgent(str) {
let arr = str.split(' ');
var digit = [];
var newStr = ''; // <-- Here
for (var i = 0; i < arr.length; i++) {
digit.push(parseInt(arr[i], 2));
}
for (let j = 0; j < digit.length; j++) {
newStr += String.fromCharCode(digit[j]);
}
return newStr;
}
console.log(
binaryAgent(
'01000001 01110010 01100101 01101110 00100111 01110100 00100000 01100010 01101111 01101110 01100110 01101001 01110010 01100101 01110011 00100000 01100110 01110101 01101110 00100001 00111111',
),
);
推荐阅读
- python - 用另一个 2d 列表过滤 2d 列表
- php - 如何使按钮颜色与我的代码匹配
- azure-pipelines - Azure 管道触发不包含相同管道的分支
- java - 我重新安装 android studio 后 Gradle 同步失败
- javascript - 不确定如何在本机反应中配置此工具提示功能
- azure - 如何将 API 数据加载到 Azure Synapse?
- ruby-on-rails - Ubuntu:无法安装 sqlite3 - 无法构建 gem 本机扩展
- vuetify.js - 如何删除 vuetify 的 v-row 内置 css 属性?
- c - gnuplot 窗口不显示
- html - 正则表达式删除 HTML 标签和 \r 和 \n 标签