function space(str, numspace)
{
output="";
for(i=0;i<str.length;++i)
{
output = numspace+ str;
}
for(i=0;i<str.length;++i)
{
output = output + numspace;
}
return output;
}
我试图让这个函数在字符串的两端添加等量的空格。我不允许使用内置函数,这就解释了为什么我要做的很长。
我得到的代码输出:
空间( “你好”, “ - ”)
“ - 你好-----------”
“ - ”表示空格,因此字符串左侧的空格数量是正确的,但字符串右侧的空格量是多少。任何人都有任何想法,为什么会发生这种情况?
答案 0 :(得分:1)
为什么不这样做呢:
const space = (str, numspace) => {
const spc = Array(numspace).fill(' ').join('')
return spc+str+spc
}
&#13;
它的作用:
spc
变量,其中包含numspace
次要的空格spc
str
const space = (str, numspace) => {
let spc = ''
for (;numspace--;spc+=' '){}
return spc+str+spc
}
console.log(space('ap',3))
&#13;
答案 1 :(得分:0)
如果numspace
是一个整数,那么您可以将该值用作for循环的上边界,如下所示:
function space(str, numspace)
{
var emptySpace = "";
for (i = 0; i < numspace; i++){
emptySpace += " ";
}
var output = emptySpace + str + emptySpace;
return output;
}
console.log("'" + space('example1', 5) + "'");
console.log("'" + space('example2', 3) + "'");
console.log("'" + space('example3', 1) + "'");
&#13;
通过这种方式,您可以创建一个变量emptySpace
,该变量是一个字符串numspace
,其长度为空白,并在返回之前将其附加到str
字符串的正面和背面输出。
编辑:根据OP评论中的信息我改变了功能。
答案 2 :(得分:0)
用任何你想要的东西包围它。
function space(str, numspace)
{
output=str;
for(i=0;i<str.length;++i)
{
output = numspace + output + numspace;
}
return output;
}
答案 3 :(得分:0)
此功能可用于在文本中附加任意数量的字符
var output = addSpace('hello','*',4);
alert(output); // output ****hello****
function addSpace(text,character,no){
var appendChar = character;
for(var i=1;i<no;i++) {
appendChar = appendChar+character;
}
return appendChar+text+appendChar;
}