array.slice返回1个元素而不是2个元素

时间:2015-03-28 09:40:03

标签: javascript arrays slice

我有一个包含2个字符串的数组。数字列表中的一个和另一个是整数。我想从第一个字符串的开头到整数的位置获取元素(如果整数是2,我想要字符串中的前两个数字)。我已编写此代码,但它只返回字符串中的第一个字符。有谁能解释为什么?感谢



var line = "1,2,3,4,5;2";

line = line.split(";");
console.log(line);

var reverse = line[0].slice(0, parseInt(line[1]));
console.log(reverse);




3 个答案:

答案 0 :(得分:1)

以下是返回所需内容的代码:

  var line = "1,2,3,4,5;2";

line = line.split(";");
var reverse = line[0].split(',').slice(0, parseInt(line[1])).join(',');
console.log(reverse);

enter image description here

答案 1 :(得分:0)

您需要使用line数组的拆分第一个元素,然后才能使用连接。

var reverse = line[0].split(',').slice(0, parseInt(line[1])).join(',');

var line = "1,2,3,4,5;2";

line = line.split(";");
console.log(line);

var reverse = line[0].split(',').slice(0, parseInt(line[1])).join(',');
console.log(reverse);

答案 2 :(得分:0)

您可以使用replace(',','')仅从字符串中获取数字。

var reverse = line[0].replace(',','').slice(0, parseInt(line[1],10));



var line = "1,2,3,4,5;2";

line = line.split(";");
console.log(line);

var reverse = line[0].replace(',','').slice(0, parseInt(line[1],10));
console.log(reverse);