我的JS在将ascii转换为字符串时添加了一个空格

My JS is adding a space when converting ascii to string

本文关键字:空格 一个 添加 在将 JS ascii 转换 字符串 我的      更新时间:2024-02-28

我在这里有一个函数接受输入参数。然后它迭代并将值从Ascii更改为字符串

im使用node.js和测试文件,出于某种原因,我的代码在结果中添加了一个空格。请帮忙吗?

function stringify(input) {
var result = "";
for (var i=0; i<=input.length; i++) {
    result+=String.fromCharCode(input[i]);
}
return result;
}

您的条件应该检查字符串inputlength-1而不是length

function stringify(input) {
var result = "";
for (var i=0; i<input.length; i++)//< instead of <=
{
    result+=String.fromCharCode(input[i]);
}
return result;
}

您只需要一直到length-1,因为字符串的最后一个字符是null字符,它是一个空白字符。当您将它复制到result变量时,它与字符串的其余部分一起以空格形式出现。