Volond Apps
220 subscribers
216 photos
28 videos
22 files
994 links
Программирование для души и от лени
Добро пожаловать! У нас есть отличное сообщество любителей Excel и VBA, Google Sheet и Google Apps Script, а также всех тех, кто готов работать с этим программным обеспечением. Присоединяйтесь к нам, чтобы задавать и от
Download Telegram
Forwarded from ServerAdmin.ru
​​Если вы не очень хорошо знакомы с git, или даже вообще его не знаете 😱, то рекомендую попробовать обучалку LearnGitBranching. Это опенсорсная песочница для обучения основам git с визуализацией всех действий - https://github.com/pcottle/learnGitBranching

Я немного потестил ее, выглядит симпатично и удобно. Хороший русский язык. Обучение разбито на уровни с теорией и заданиями, которые запускаешь в консоли и видишь визуализацию действий. Задумка очень крутая, так как гит немного замороченная система и так просто взять и объять её не получится. Ничего удобнее по гиту лично я не видел.

Сервис можно развернуть у себя, либо воспользоваться готовой платформой - https://learngitbranching.js.org. Если метите в DevOps и не знаете, с чего начать, можете смело начинать с GIT. Без него никуда.

#сервис #обучение
Forwarded from lullisTeacher
JS-массивы и работа с ними

Начнём утро с чашечки кофе и массивов 👨‍💻

Делаю небольшой проект и встала задача, как проверить 2 массива и выделить ту часть, которая есть отдельно в первом, отдельно во втором, но нет в двух сразу?

Оказывается, есть не сильно хитрое, но красивое решение и выглядит оно так:
let difference = arrA.filter(x => !arrB.includes(x)).concat(arrB.filter(x => !arrA.includes(x)));

Подробнее ознакомиться с этим и другими вариантами пересечений и объединений массивов можно по ссылке: https://vc.ru/dev/89555-javascript-massivy-peresechenie-raznost-i-obedinenie-v-es6

#js #array
Лучшее использование методов массива

Небольшая статья в которой описано, как можно получить тот же результат, но с меньшими трудозатратами.

Например, когда уместнее использовать .includes(), а не .indexOf() или .some(), а не .find().

Читать -> тут.

🔥 @ProstoRazrabotka
Forwarded from Рестарт
This media is not supported in your browser
VIEW IN TELEGRAM
Chart.js — библиотека диаграмм JavaScript для дизайнеров и разработчиков

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

Также в неё встроены средства работы с анимацией, что позволит эффектно видоизменять графики в зависимости от новых данных, а также экспериментировать с цветом.

GIT #разработка
Регулярные выражения в JavaScript за час

Регулярные выражения — мощное средство для поиска и замены текста в строках. В JavaScript существуют специальные методы, которые обрабатывают RegExp.

Подробнее о задании и использовании регулярных выражений в JavaScript:

https://youtu.be/uaDmuoZtIK4

#js
Forwarded from Хабр
​​🔔 Бей в колокол: 3 и 4 декабря пройдёт YaTalks 2021 — главная конференция «Яндекса» для IT-сообщества

На повестке: изменения в индустрии за год, почему IT — это новый космос и что любят делать программисты, когда не пишут код. Формат: онлайн по регистрации бесплатно.

80 спикеров выступят в пяти треках: бэкенд, фронтенд, мобильная разработка, машинное обучение и управление продуктом. Заявлен также отдельный lifestyle-трек, где речь пойдёт о свободном времени, личных финансах и прочей жизе.

👉 Подробности и регистрация
Можно ли обрезать изображение с помощью скрипта приложения Google без использования стороннего API
.
Источник:



Я хочу обрезать изображение с помощью Google App Script, если изображение выходит за пределы рамки страницы, но, насколько я проверил в документации Google App Script, я не смог найти способ обрезать изображение.

••••••••••
Обсудить:
Forwarded from volond
This media is not supported in your browser
VIEW IN TELEGRAM
function onEdit(e) {

var range=e.range
var value=range.getValue()
var note=range.getNote()
console.log(note)
var fn=new Function("value",note)
console.log(fn.toString())
value=fn(value)
console.log(value)
range.setFormula(value)
SpreadsheetApp.flush()
range.setValue(range.getValue())
}
Всем спасибо за помощь, задача решена!
Решение оказалось гораздо проще, с помощью модификаторов рег. выражений, превращающих строку в буквальный текст.

for (let i in firstRow) {
body.replaceText(`\\Q{${firstRow[i]}}\\E`, lastRow[i]);
}