- Вы хотите использовать массив
blobs
в качестве расширенных значений blob0, blob1, blob2
при test(directory, blob0, blob1, blob2)
. - . Вы хотите использовать
directory
при test(directory, blob0, blob1, blob2)
, добавив directory
.
Если мое понимание верно, как насчет этого ответа? Пожалуйста, подумайте об этом как об одном из нескольких возможных ответов.
В этом ответе используется bind
.
Модифицированный скрипт:
// sample getBlob(). This returns a blob.
function getBlob() {return Utilities.newBlob("sample", MimeType.PLAIN_TEXT)}
function test(directory, blob0, blob1, blob2) {
Logger.log("%s, %s, %s, %s", directory, blob0, blob1, blob2) // <--- directory, Blob, Blob, Blob
for (var argumentIndex = 1; argumentIndex < arguments.length; argumentIndex++) {
var bytes = arguments[argumentIndex].getBytes();
//do some things
}
}
// Please run this function.
function myFunction() {
var directory = "directory";
var blobs = [];
blobs[0] = getBlob();
blobs[1] = getBlob();
blobs[2] = getBlob();
test.bind(this, directory).apply(null, blobs);
}
- В этот модифицированный сценарий
directory
добавляется с помощью bind
. - . При запуске
myFunction()
вы можете увидеть directory, Blob, Blob, Blob
при Logger.log("%s, %s, %s, %s", directory, blob0, blob1, blob2)
в функции test(directory, blob0, blob1, blob2)
.
.
Ссылки:
Если я неправильно понял ваш вопрос, и это не то направление, которое вы хотите, я прошу прощения.