Given some changes to various changes I found that the above didn't quite work. I additionally wanted author and timestamp of comment in the export. So please use the below script as it generated my expected output.
function listComments() {
// Change docId into your document's ID
var docId = 'docId';
var comments = Drive.Comments.list(docId).items;
var hList = [], cList = [], nList = [], dList = [];
// Get list of comments
if (comments && comments.length > 0) {
for (var i = 0; i < comments.length; i++) {
var comment = comments[i];
hList.unshift([comment.context ? comment.context.value : '']);
cList.unshift([comment.content]);
nList.unshift([comment.author ? comment.author.displayName : '']);
dList.unshift([comment.createdDate ? new Date(comment.createdDate).toLocaleString() : '']);
}
// Set values to A, B, C, and D and change DocId to the spreadsheet ID and ensure tab in the spreadsheet is named Comments
var sheet = SpreadsheetApp.openById('DocId').getSheetByName('Comments');
if(sheet !== null) {
sheet.getRange("A1:A" + hList.length).setValues(hList);
sheet.getRange("B1:B" + cList.length).setValues(cList);
sheet.getRange("C1:C" + nList.length).setValues(nList);
sheet.getRange("D1:D" + dList.length).setValues(dList);
} else {
Logger.log('Sheet "Comments" not found');
}
}
}
