【问题标题】:How to parse a comma seperated variable into array using javascript?如何使用 javascript 将逗号分隔的变量解析为数组?
【发布时间】:2013-12-06 18:52:31
【问题描述】:

我已经定义了包含偶数个逗号分隔值和 NULL 值的变量,并且字符串长度不同。

var a = '1, 2, 3, 4, 9, NULL':

我怎样才能将这些解析成数组,比如

a[0] [0] = 1
a[0] [1] = 2
a[1] [0] = 3
a[2] [0] = 4
a[3] [0] = 9
a[3] [1] = NULL

然后再次转换那些

a[0] [0]
a[1] [0]
a[2] [0]

到一个像

这样的变量中
//values of a[0] a[0], a[1] [0], a[2] [0]
test = '1,3,9'

使用 javascript。

【问题讨论】:

  • 您是如何获得索引的?只需使用.split(', ') 就可以很容易地将其转换为简单的一维数组。但我无法理解你的索引。
  • string.split(', ')?
  • 看看指数,伙计们。这不像split那么简单。
  • 您是否要创建一个 2 列二维数组?如果是这样,则您的索引已关闭。

标签: javascript arrays


【解决方案1】:

为什么需要一个多维数组...?使用 split 从逗号分隔的字符串中返回一个数组。

var a = '1, 2, 3, 4, 9, NULL';
var b = a.split(', ');

【讨论】:

  • 我认为你错过了重点......并不是我自己真正理解重点。但是请求的输出不是这个简单的数组。
【解决方案2】:

我不明白您索引的原因,但以下应该会产生您想要的输出。

var a = '1, 2, 3, 4, 9, NULL';
var b = a.split(',');
var array = [];
for (var i = 0; i < 3; i++) {
    array[i] = [];
    for (var j = 0; j < 2; j++) {
        array[i][j] = b[i * 2 + j];
    }
}
console.log(array); //outputs a[0] [0] = 1, a[0] [1] = 2, a[1] [0] = 3, a[1] [0] = 4, a[2] [0] = 9, a[2] [1] = NULL
var test = '';
for(var i = 0; i < array.length; i++) {
    if(i>0) test=test+',';
    test = test + array[i][0];
}
console.log(test); //outputs 1, 3, 9

这不会修剪和删除字符串中的空格,但您可以自己这样做,这确实是必要的。

【讨论】:

  • 如果它像那样随意,我会尽快return [[1, 2], [3], [4], [9, "NULL"]]; 并完成它。
  • 阿门。他想要的数组和字符串背后的推理毫无意义。我认为他提供的任何数字都不是真实数据,他可以修改发布的代码以供他使用。 a[2][0]a[3][0] 毫无意义,看起来像是一个错字。因为在问题的一个地方a[2][0]4 而另一个地方是9
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-27
  • 2020-12-04
  • 2015-02-17
  • 2015-02-01
相关资源
最近更新 更多