私はこのコードをreplitで実行すると、答えと未定義の間に余分なスペースが返される理由を理解できませんでした。 '\ n'はフォーマットされたままでなければなりませんが、誰でもそのスペースを取り除く方法を説明できますか?助けをお待ちしています。なぜこの関数の出力に余分なスペースがありますか?
コード:
function transposeTwoStrings(array) {
var x = array[0];
var y = array[1];
var longestString = 0;
var result = '';
if(x.length > y.length) {
longestString = x;
}
else if(y.length > x.length) {
longestString = y;
}
else if(x.length === y.length) {
longestString = x;
}
for(var i = 0; i < longestString.length; i++) {
result += ((x[i] || ' ') + ' ' +(y[i] || ' ')) + '\n';
}
return result;
}
console.log(transposeTwoStrings(['Hello','World']));
Replit Output:
H W
e o
l r
l l
o d
<--(This is the space)
=> undefined
これを実行しているとき、私は何のスペースを取得していませんコンソールでは、しかし、定義されていないときに表示されるように機能を実行するときにコピー/貼り付け経由で。 'alert()'の 'console.log()'を入れ替えても、あなたの関数は問題ないか誤って返ってくるでしょう。 – NewToJS
repl.itはすべてのconsole.logの後に改行を追加するだけです。 – Purag
これを複製することはできませんが、 'trim()'関数で削除できる最後の 'd'の後に' \ n'があります。 –