Gmail Надстройка экспортируемых функций

Недавно, когда я искал средства для повышения производительности моего дополнения Gmail, я натолкнулся на определенный вопрос, в котором отмечалось, что:

Обратите внимание, что библиотеки и глобальные переменные оцениваются каждый раз, когда ваше дополнение запускает какую-либо функцию

Я начал тестировать его и заметил, что во время отладки this свойство функции, кроме глобальных и библиотечных объектов, содержащихся module а также exports свойства, которые содержат все экспортируемые (и, возможно, даже все) функции. Я использую Typescript, поэтому экспорт - это способ достижения модульности для меня, но, насколько я знаю, clasp на самом деле не компилирует мой Typescript.

То есть я хотел бы знать следующие темы:

1) Оцениваются ли действительно экспортированные функции? Что это значит в частности?

2) Какие функции точно оцениваются? Все или только экспортированные? Какие функции должны быть экспортированы?

3) Применяются ли эти правила к вызовам вложенных функций? Скажи, я выполняю map функция над массивом. Оценивается ли контекст при каждом вызове функции?

Кроме того, мне бы очень хотелось получить общий совет о том, как улучшить производительность моего дополнения. Есть ли какие-либо руководства, кроме http://developers.google.com/?

Заранее спасибо.

0 ответов

Другие вопросы по тегам