var b = 1; //Это глобальная переменная b
var a = 2; //Это глобальная переменная a
console.log(a, b); // 2, 1
(function() {
var a = 3; //тут объявляется переменная a внутри функции
b = 4; // тут нет объявления переменной b, поиск переменной идет сначала внутри функции, если ее нет, то ищем ее вне границ функции и находим. Но если бы мы ее и там не нашли, то была бы ошибка "Переменная не объявлена"
})(); //Функция сразу запускается, результатом ее выполнения будет глобальная a =2 (не измен) и глобальная b = 4 (изм)
console.log(a, b); // 2, 4
if (a == 2){
var a = 5; //так как глобальная a осталась равна 2, то условие сработает и a приравняется 5. Точнее она переопределится здесь. Условие выполняется в рамках глобальной области видимости.
}
console.log(a, b); // 5, 4
let attachments = '';
if(data.response.items[0].attachments[0].type === undefined) {
attachments = 0;
} else {
attachments = data.response.items[0].attachments[0].type;
}
let attachments = (data.response.items[0].attachments[0].type === undefined) ? 0 : data.response.items[0].attachments[0].type;
<p>Привет {{username}}</p>
И отправляем его в БД (у меня mysql)const hogan = require('hogan.js')
app.post('/mailer/:template', (req, res) => {
// тут мы получили шаблон из БД
const tpl = mysql.get(`select * from tpls where name='${req.params.template}'`
let template = hogan.compile(tpl)
let output = template.render(req.body) //Передаем в щаблон объект с данными
console.log('out:', output) // out: <p>Привет Василий</p>
})
const timePoints = (start, end, period = 30) => {
const iter = (current, acc) => {
if (moment(current).diff(moment(end), "minutes") > 0) {
acc[acc.length] = end;
return acc;
}
return iter(moment(current).add(period, "minutes"), acc[acc.length] = current)
}
return iter(start, [])
}
const mytimePoints = timePoints('17:45', '20:00', 30)
console.log(mytimePoints)