【问题标题】:Convert ndarray to array of arrays将 ndarray 转换为数组数组
【发布时间】:2019-06-25 10:26:39
【问题描述】:

我正在使用ndarray。我正在做控制台日志:

console.log(ndarray.data)

是:

Uint8Array [ 0, 0, 0, 255 ]

如何将其转换为数组数组(上例中的数组数组),如下所示:

[[ 0, 0, 0, 255 ]]

当我有这样的 Uint8Array 时:

Uint8Array [
  0,   0,
  0, 255,
  0,   0,
  0, 255
]

那么我希望它是

[[ 0, 0, 0, 255 ], [ 0, 0, 0, 255 ]]

但给出的答案是

[ [
    0,   0,
    0, 255,
    0,   0,
    0, 255
  ] ]

【问题讨论】:

  • 你想保留在 ndarray 中还是想要一个常规数组?
  • 正则数组,其中包含 4 个数字的数组,如 post 中一样

标签: javascript arrays multidimensional-array


【解决方案1】:

试试

let u = new Uint8Array([ 0, 0, 0, 255, 0, 0, 0, 255 ]);
let a=[];

for(let i=0; i<u.length/4; i++) a.push([u[4*i],u[4*i+1],u[4*i+2],u[4*i+3]]);

console.log( a );

【讨论】:

  • 我想每四分之一拆分一次,所以我会有数组数组,但这只是创建数组数组,看看编辑
  • 工作得很好,很酷,dzięki:)。你能看看我的帖子并回答stackoverflow.com/questions/56749330/…(我在你的帮助下自己找到了答案),这是检查图像是否包含一种以上颜色的最有效方法吗?
【解决方案2】:

你也可以这样试试

let ua = new Uint8Array([ 0, 0, 0, 255 ]);

let aa = [[...ua]];

console.log( aa );

【讨论】:

    猜你喜欢
    • 2013-08-14
    • 2021-09-23
    • 1970-01-01
    • 2017-10-05
    • 1970-01-01
    • 1970-01-01
    • 2019-05-25
    • 2021-06-19
    • 1970-01-01
    相关资源
    最近更新 更多