function currentLine(katzDeliLine) {
if (katzDeliLine.length > 0) {
var textToPrint = "The line is currently: "
for (var crrLine = 0; crrLine < katzDeliLine.length; crrLine++) {
textToPrint = textToPrint + (crrLine + 1) + ". " + katzDeliLine[crrLine] + ","
}
return textToPrint;
} else {
return "The line is empty"
}
}
var lineofpeople = ["katrina", "kevin", "vincent"]
输出为:The line is currently: 1. katrina, 2. kevin, 3. vincent,
我在试着去掉'vincent‘后面的最后一个逗号
我尝试了if语句,还尝试了.join()方法。我不知道如何在代码中实现它们。
发布于 2019-09-02 23:46:24
您可以将前导数字与值进行映射,并使用逗号连接数组。
function currentLine(array) {
return array.length
? `The line is currently: ${array.map((v, i) => `${i + 1}. ${v}`).join(', ')}.`
: "The line is empty.";
}
var lineofpeople = ["katrina", "kevin", "vincent"];
console.log(currentLine(lineofpeople));
console.log(currentLine([]));
发布于 2019-09-03 00:09:07
一个简单的解决方案是使用和join()。
这里你应该注意,它不是单引号,而是一个反引号。
var lineofpeople = ["katrina", "kevin", "vincent"]
const emptyLine = []
// Using arrow function; the code is short
const currentLine = (line) => {
return !line.length ? 'The line is empty' : `The line is currently: ${line.map((e, i) => `${i + 1}. ${e}`).join(', ')}`
}
console.log(currentLine(lineofpeople)) // expected: The line is currently: 1. katrina, 2. kevin, 3. vincent
console.log(currentLine(emptyLine)) // expected: "The line is empty"
发布于 2019-09-02 23:52:41
使用textToPrint.slice(0,-1)
删除返回字符串的最后一部分
function currentLine(katzDeliLine) {
if (katzDeliLine.length > 0) {
var textToPrint = "The line is currently: "
for (var crrLine = 0; crrLine < katzDeliLine.length; crrLine++) {
textToPrint = textToPrint + (crrLine + 1)+". " +katzDeliLine[crrLine]+","
}
return textToPrint.slice(0,-1);
}
else {
return "The line is empty"
}
}
var lineofpeople = ["katrina", "kevin", "vincent"]
console.log(currentLine(lineofpeople));
https://stackoverflow.com/questions/57759676
复制相似问题