Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何打印uz.zip.apply()的结果_Javascript_Underscore.js_Apply - Fatal编程技术网

Javascript 如何打印uz.zip.apply()的结果

Javascript 如何打印uz.zip.apply()的结果,javascript,underscore.js,apply,Javascript,Underscore.js,Apply,我第一次尝试下划线.js,希望将我的行数组转换为列。如图所示,我需要将其与2D数组连接起来 我检查了这里的讨论,发现可以通过\uz.zip.apply()完成。但是,当我尝试它的时候,它并没有显示出任何错误 Final = my 2D array dtr = ['s', 's', 'n']; 我需要将dtr与final连接起来,这样dtr中的每个元素都是final数组中的一个列头,这样做: _.zip.apply(dtr, Final) 但它没有显示任何结果 预期成果: 我的2d

我第一次尝试下划线.js,希望将我的行数组转换为列。如图所示,我需要将其与2D数组连接起来

我检查了这里的讨论,发现可以通过
\uz.zip.apply()
完成。但是,当我尝试它的时候,它并没有显示出任何错误

  Final = my 2D array
  dtr = ['s', 's', 'n'];
我需要将dtr与final连接起来,这样dtr中的每个元素都是final数组中的一个列头,这样做:

  _.zip.apply(dtr, Final)
但它没有显示任何结果

预期成果:

我的2d阵列:-


dtr阵列需要位于2d阵列的顶部。。希望它是清楚的。

我的答案包含两种情况,这取决于数组b的组织方式

案例一:

var a = ['s','s','n'];
var b = [[50, 50, 'hello'], 
         [50,  5, 'beta'], 
         [50,  5, 'gama']];

_.zip(a, b).map(_.flatten) // -> [Array[4], Array[4], Array[4]]
案例二

var a = ['s','s','n'];
var c = [[50, 50, 50], 
         [50 , 5, 5],
         ['hello', 'beta', 'gama']];
var b = _.zip.apply(null, c); // content equals to case one variable b

_.zip(a, b).map(_.flatten) // -> [Array[4], Array[4], Array[4]]
结果:

[['s', 50, 50, 'hello'],
 ['s', 50,  5, 'beta'],
 ['n', 50,  5, 'gama']]
[['s','s','n'],
 [50, 50, 50], 
 [50 , 5, 5],
 ['hello', 'beta', 'gama']];
[['s', 50, 50, 'hello'], 
 ['s', 50,  5, 'beta'], 
 ['n', 50,  5, 'gama']];

以防您希望dtr阵列成为2d阵列中的第一个阵列。我们可以这样做:

var a = ['s','s','n'];
var b = [[50, 50, 50], 
         [50 , 5, 5],
         ['hello', 'beta', 'gama']];

var result = [a].concat(b);
结果:

[['s', 50, 50, 'hello'],
 ['s', 50,  5, 'beta'],
 ['n', 50,  5, 'gama']]
[['s','s','n'],
 [50, 50, 50], 
 [50 , 5, 5],
 ['hello', 'beta', 'gama']];
[['s', 50, 50, 'hello'], 
 ['s', 50,  5, 'beta'], 
 ['n', 50,  5, 'gama']];
编辑

结果:

[['s', 50, 50, 'hello'],
 ['s', 50,  5, 'beta'],
 ['n', 50,  5, 'gama']]
[['s','s','n'],
 [50, 50, 50], 
 [50 , 5, 5],
 ['hello', 'beta', 'gama']];
[['s', 50, 50, 'hello'], 
 ['s', 50,  5, 'beta'], 
 ['n', 50,  5, 'gama']];

如果您提供有效的代码和格式正确的问题,人们将能够更好地帮助您。另外,预期的输出是什么?@thefourtheye请检查预期的输出outcome@user3050590现在还不清楚。您能同时显示2D数组吗?@acjay dtr是问题中显示的1D数组,final是我从csv文件中读取的2D数组。。其余部分,请检查与屏幕截图类似的预期结果。我这样做了,得到了一个类似于匿名函数[下划线-min.js]的错误。另外,我的2d数组的形式类似于案例1中的b,但是,我不想转置这个数组,我想转置数组a。在concat调用之前,我忘记了将a数组包装到[a]中。尽管它仍然是错误的格式。让我看看…谢谢,我把数组用方括号括起来,然后就修好了。