逗号分隔字符串javascript

时间:2014-09-25 12:57:17

标签: javascript

对不起,这是一个愚蠢的问题,但我尝试列出从1到限制的一系列数字,并且应该用逗号分隔。我有个问题。我不知道如何停止逗号。我应该有1,2,3但我有1,2,3。你能帮助我吗?这是我的代码。

function getNumberSequence(number) {
var result = ""
if(number <= 0){
    return result
    }
    else{
        if(number == 1){
            result = result + 1
        } else {
        for(i = 1; i <= number; i++){
            result = result + ',' + i;
        }
        }
    }
    return result
}

全部谢谢

5 个答案:

答案 0 :(得分:1)

你可以简单地添加一个标志(在例子中#34;首先是#34;)并检查这是否是你的第一次迭代 - 如果是这样,不要添加逗号但是将其设置为false ...见这里:http://jsfiddle.net/fdfxc5zq/

 var first = true; //have a flag that tells you if this is your first iteration - don't add a comma the first time around
        for (i = 0; i <= number; i++) {
            if (first) {
                first = false;
            } else {
                result += ", ";
            }
            result += i;
        }

答案 1 :(得分:0)

使用您的代码,只需使用初始值1声明结果并使用i = 2启动for循环。解决了。 (如果数字为1,则返回结果)

答案 2 :(得分:0)

为您准备一个班轮:

return Object.keys(Array.apply(null,new Array(number))).map(function(n) {return +n+1;}).join(",");

基本上,创建一个长度为number的数组,“应用”它(基本上最终给每个索引赋予undefined个值),然后使用Object.keys来获取数组的索引,递增所有项目,然后用逗号连接整个事物。

答案 3 :(得分:0)

两种简单的方法:

1)只需在每个数字后添加逗号并返回长度为1的子字符串即可删除最后一个逗号

if (i === 0) return ""; //to avoid substring() issues on empty strings

var result = "";
for (i = 0; i <= number; i++) {
    result = i + ",";
}

return result.substr(0, result.length-1);

2)使用数组和连接

var result = [];
for (i = 0; i <= number; i++) {
    result.push(i)
}
return result.join();  //default join separator is the comma

答案 4 :(得分:0)

YourCommaSeparatedString.split(',');