JXA: как создать новый лист в документе в Numbers.app

Я использую JXA для автоматизации процесса с помощью приложения Numbers. Каков синтаксис для создания нового листа в существующем документе?

var Numbers = Application('Numbers');
Numbers.documents[0].Sheet()...

Эквивалентом AppleScript будет:

tell application "Numbers"
    tell document 1
        set theSheet to make new sheet with properties {name:sheetName}
    end tell
end tell

Благодарю вас!


person user7423370    schedule 16.01.2017    source источник


Ответы (1)


С помощью кого-то особенного, вот ответ:

var Numbers = Application('Numbers');
var newSheet = Numbers.Sheet({name: 'sheetName'});
Numbers.documents[0].sheets.push(newSheet);

Благодарю вас!

person user7423370    schedule 17.01.2017
comment
Могу я спросить, как вы это поняли? Я не могу найти много документации о том, как использовать jxa с числами, а документация в scriptedtior очень ограничена. - person user1716970; 27.02.2018
comment
Я сам этого не понял. Как я писал выше, кто-то помог мне. Да, документация по использованию JXA с Numbers действительно очень ограничена. Однако, как только вы это поймете, JavaScript намного мощнее, чем AppleScript, в извлечении/манипулировании/переносе данных из одного документа/листа/таблицы в другой. Если это то, что вам нужно, изучение JXA действительно стоит усилий. - person user7423370; 28.02.2018
comment
Хорошо, спасибо за ваш ответ. Я как раз думал о том, стоит ли мне отказаться от JXA и попытать счастья с Applescript. Но так как я думаю, что использовать Applescript немного сложно, я попробую еще немного с JXA. - person user1716970; 01.03.2018