@palnamalina said in Как включить пересылку в Gmail?:
Актуально
https://community.bablosoft.com/topic/24964/bas-не-открывает-всплывающую-диалоговую-страницу/28
@MP said in Как повторить действие "Парсить CSV строку" в js:
@Fox у меня есть большой бот, в нем я использую js для оптимизации. На данный момент приходится делать костыли, чтобы делить подобные строки через split(':')
Можете более подробно описать, каким именно образом вы "оптимизируете" скрипт при помощи js?
@MP said in Как повторить действие "Парсить CSV строку" в js:
a = ("abc:\"0:0.18\":123").split(":") console.log(a)["abc","\"0","0.18\"","123"]Мб я чего не понимаю))
А где именно вы выполняете js код в BAS?
@MP said in Как повторить действие "Парсить CSV строку" в js:
@Fox Встроенные языки/Node.js
Вот уж точно "оптимизация".. Если уж используете ноду, то можете использовать и готовые модули, например https://www.npmjs.com/package/csv-parse
@MP said in Как повторить действие "Парсить CSV строку" в js:
@Fox не претендуй на звание "лучшего оптимизатора".
Эмм, что?
Если на то пошло, что лучше использовать вместо Node.js?
Смотря каких целей необходимо добится. Ноду не запрещено использовать, но с ней есть много подводных камней. Инстанс ноды запускается один на весь скрипт, значит все команды в многопотоке с нодой будут обрабатываться по очереди. Если крашнется нода в одном потоке, потеряются данные во всех остальных и т.д.
@Fox возможно у Ноды и есть подводные камни, но, как по мне, это компенсируется универсальностью и простотой реализации на ней. Много потоков я не использую, обработка по очереди чувствуется, но не сильно. А потеря данных при краше решается написанием нормального кода)
А вот этого я не понял
@Fox said in Как повторить действие "Парсить CSV строку" в js:
Вот уж точно "оптимизация"..
Будто бы замена конструктора Баса на нормальный ЯП не является оптимизацией)
@MP said in Как повторить действие "Парсить CSV строку" в js:
Будто бы замена конструктора Баса на нормальный ЯП не является оптимизацией)
Я не хочу развивать второй холивар за день, если нужна нода - используйте ноду. Что бы решить поставленную в первом посте задачу в ней вы можете использовать модули csv или использовать действия BAS (для этого нужно просто скопировать действие на панеле сценария и вставить в окне nodejs)
@MP если в в действии Выполнить код, то
var list = csv_parse(string)
это старый вариант, соответствует действию Парсить строку(устаревшее), хорошо подходит чтобы парсить строки например из базы.
Есть еще новый вариант
var list = _csv_parse(string,":",false)
где уже можно указать разделитель
Что бы добавить это в ноду - блок выполнить код нужно скопировать в окно ноды, но это такое себе, поэтому проще или подготовить данные заранее, или использовать в ноде другую библиотеку.
Что бы посмотреть в какой код используется в действии, просто найдите его по id во вкладке скрипт внизу окна бас.
@DrPrime ого, спасибо огромное, смог сделать с помощью
@DrPrime said in Как повторить действие "Парсить CSV строку" в js:
var list = _csv_parse(string,":",false)
Но не смог найти этого
@DrPrime said in Как повторить действие "Парсить CSV строку" в js:
Что бы посмотреть в какой код используется в действии, просто найдите его по id во вкладке скрипт внизу окна бас.