我在创建PDF文件时遇到问题,我可以动态地从数组中放入数据,例如使用for循环。数组的长度每次都可以不同,所以我不能只为一个大小的数组写入。
我有能力做的例子:
var stuff = [
'aaaaaaaaaaaaaaaaaaa',
'bbbbbbbbbbbbbbbbbbb',
'ccccccccccccccccccc',
'ddddddddddddddddddd'
]
var dd = {
content:
[
{text: stuff[0], pageBreak: 'after'},
{text: stuff[1], pageBreak: 'after'},
{text: stuff[2], pageBreak: 'after'},
{text: stuff[3], pageBreak: 'after'}
]
}
但是我喜欢做那样的事情:
var stuff = [
'aaaaaaaaaaaaaaaaaaa',
'bbbbbbbbbbbbbbbbbbb',
'ccccccccccccccccccc',
'ddddddddddddddddddd'
]
var dd = {
content:
[
for(var i=0;i<stuff.length;i++){
{text: stuff[i], pageBreak: 'after'}
}
]
}
我知道第二段代码没有任何意义,但它显示了我想要做的事情。
有什么方法可以实现这个目标吗?
答案 0 :(得分:1)
您可以使用Array#map,就像这样
var stuff = [
'aaaaaaaaaaaaaaaaaaa',
'bbbbbbbbbbbbbbbbbbb',
'ccccccccccccccccccc',
'ddddddddddddddddddd'
];
var dd = {
content: stuff.map(function(item) {
return { text: item, pageBreak: 'after'}
})
};