indexedDB idb 库 - 插入多条记录

indexedDB idb library - insert multiple records

使用 javascript Promises,我正在使用 idb 库将数据存储在 indexedDB 中。我想弄清楚如何保证多个 'adds' 将在事务结束之前成功提交。

我的问题是关于在一次交易中添加多条记录,以下哪项是正确的:

var store = transaction.objectStore(...);
for(var i=0; i<records.length; i++) { store.add(records[i]); }
return transaction.complete;

var store = transaction.objectStore(...);
return Promise.all(records.map( record => { return store.add(record); }))
   .then( function () { return transaction.complete; });

哪一个保证在交易结束前所有记录都添加成功?为什么?

所以根据评论,它们似乎都可以工作。由于 Promise.all 不是必需的,所以第一个更容易阅读。谢谢。