У меня есть этот конструктор объекта:
// links object creator
function createLinksObject(id) {
//constructor area
this.mainFolderId = id;
this.mainFolder = DriveApp.getFolderById(id);
this.mainFolderName = this.mainFolder.getName();
this.mainFolderLink = this.mainFolder.getUrl();
this.subFoldersArray = [];
// function calling area
addSubFolders(this.mainFolder, this.subFoldersArray);
sortArray(this.subFoldersArray);
}
Что правильно работает с этой реализацией этого:
var linksObject;
// generates links document
function linksDocument() {
if (!showDevAlert("LINKS - HAHNE")) {
return;
}
setTextStyle("A1:Z1000", "arial", 14, "center", "middle");
createsHeaders("", "", "", "", "R00");
setTitle("LINKS");
linksObject = new createLinksObject(getParentFolderID());
setMainFolderLink();
setSubFoldersLinks(14);
renameSheet("LINKS");
}
Но я не могу понять, почему мой код не запускается, когда я пытаюсь напрямую определить linksObject внутри моей функции linksDocument ().
// generates links document
function linksDocument() {
if (!showDevAlert("LINKS - HAHNE")) {
return;
}
setTextStyle("A1:Z1000", "arial", 14, "center", "middle");
createsHeaders("", "", "", "", "R00");
setTitle("LINKS");
var linksObject = new createLinksObject(getParentFolderID());
setMainFolderLink();
setSubFoldersLinks(14);
renameSheet("LINKS");
}
Или когда я пытаюсь полностью определить его вне моей функции.
var linksObject = new createLinksObject(getParentFolderID());
// generates links document
function linksDocument() {
if (!showDevAlert("LINKS - HAHNE")) {
return;
}
setTextStyle("A1:Z1000", "arial", 14, "center", "middle");
createsHeaders("", "", "", "", "R00");
setTitle("LINKS");
setMainFolderLink();
setSubFoldersLinks(14);
renameSheet("LINKS");
}
Примечания:
setMainFolderLink () и setSubFoldersLinks (14) являются единственными двумя функциями, которые
собираюсь использовать объект linksObject.
в любом случае я определяю ссылки только один раз, но в разных местах.