将一个字符串转换在JavaScript中的二维数组 [英] convert a string into a two-dimensional array in javascript

查看:86
本文介绍了将一个字符串转换在JavaScript中的二维数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想这样的字符串转换10 | 15 | 1,喜,0,-1,再见,2,其中前两个元素 10 | 15 意味着什么比 1,喜0,-1,再见,2 。我想他们相互分离。完成了一个天真的方法是:

I'm trying to convert a string like this "10|15|1,0,-1,bye,2" where the first two elements 10|15 mean something different than 1,0,-1,bye,2. I would like to separate them from each other. A naive way to accomplish that would be:

value = string.split("|");
var first = value[0];
var second = value[1];
var tobearray = value[2];
array = tobearray.split(",");

(当然,如果你知道一种更好的方式来做到这一点,我会很高兴知道)。
然而,阵列是包含数组数组[0] = 1,阵列[1] =喜阵[2] = 0,数组[ 3] = - 1 等,但是,我想获得的二维阵列,例如

(Of course, if you know a way to do this in a better way, I'd be glad to know). However, array is an array which contains array[0]=1, array[1]= array[2]=0, array[3]=-1, etc. However, I want to obtain a two dimensional array such as

array[0][0]=1, array[0][1]=hi, array[0][2]=0
array[1][0]=-1, array[1][1]=bye, array[1][2]=2

有没有办法做到这一点?

Is there any way to do that?

感谢

推荐答案

前两个元素( 10 | 15 )可以预先提取。之后,留给你的:

The first two elements (10|15) can be extracted beforehand. After that you're left with:

var a = "1,hi,0,-1,bye,2";

我们的拼接的,直到我们一无所有:

Let's splice until we're left with nothing:

var result = [];

a = a.split(','); 

while(a[0]) {
    result.push(a.splice(0,3));
}

result; // => [["1","hi","0"],["-1","bye","2"]]

这篇关于将一个字符串转换在JavaScript中的二维数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆