javascript – 如何使用带有二维数组的array.map

我需要遍历一个数组,但该语句位于括号[]之间

但是不允许在括号之间放置for语句,因此会导致SyntaxError:在for之后缺少’of’

在网上搜索,我发现array.map()可能是一个解决方案.
但是,我无法在多维数组上找到array.map的示例,并且无法使我的代码工作.

下面的示例创建一个表并将其导出到pdf文件中.
这可以正常工作,但仅适用于静态表:

var docDeFinition = {
content: [
{
  table: {
    body: [
      [ 'First','Second','Third','The last one' ],[ 'Value 1','Value 2','Value 3','Value 4' ],[ 'Val 1','Val 2','Val 3','Val 4' ]
    ]
  }
}
]};

JSFiddle

我需要代码来为动态表工作.
我正在尝试从数组创建一个表,无法让它正常工作.
这是我到目前为止:

function html2Pdf(){
var arr = [[ 'First',[ { text: 'Bold value',bold: true },'Val 4' ]];    
var docDeFinition = {
content: [
{
  table: {
    body: [
     arr.map(function(item){
        return item
     })    
    ]
  }
}
]
};
pdfMake.createPdf(docDeFinition).open();
}

JSFiddle

最佳答案
如前所述,直接将给定数组注入到结果结构中是可以的.

table: {
    body: arr
  }

关于如何在二维数组上使用数组映射的问题:您可以像使用for循环或类似方法一样嵌套它.

body: arr.map( function( row ) {
    return row.map( function( cell ) { 
        return foo( cell ); 
    } );
} )

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...