const today = new Date(); // сегодня, сейчас. 22 сентября
const tomorrow = new Date();
tomorrow.setDate( tomorrow.getDate() + 1); // +1 день, 23 сентября, это же время.
const plus13days = new Date();
plus13days.setDate( plus13days.getDate() + 13); // +13 дней, 5 октября
const filteredArray = array.filter( el => el.id.substring(0,3) === '051' )
$a
и посмотреть ; )echo
вы напишете запятую, то назначение $b
выполнится только в случае истинности условия в if
:$a = false;
if ($a) echo "не пусто"; $b = 1; // назначение $b выполнится всегда
if ($a) echo "не пусто", $b = 1; // назначение $b выполнится только при истинности $a
// второй вариант плохой, не делайте так. Результат $b = 1 передается как аргумент в echo
// лучше использовать фигурные скобки:
if ($a) {
echo "не пусто";
$b = 10;
}
// в скобках лучше читается
Рейтинг = Нижняя граница доверительного интервала Вильсона (Wilson) для параметра Бернулли
json_decode()
, если json файл окажется слишком большим.\d
– одна цифра(\d)
– одна цифра, и мы её запомнили, чтобы потом вывести через $1, $2, ... $8\s
– один пробельный символ\s?
– один пробельный символ, но если его нет - тоже ок\-
– один символ дефиса (тоже надо экранировать)\-?
– один символ дефиса, если его нет, то и ладно.var re = /(\d)\s?(\d)\s?(\d)\s?(\d)\s?\-?\s?(\d)\s?(\d)\s?(\d)\s?(\d)/;
var tests = [
'1600 1800', // 16:00 - 18:00
'16001800', // 16:00 - 18:00
'abc def 16001800 geh', // abc def 16:00 - 18:00 geh
'zzzz16001800zzz' // zzzz16:00 - 18:00zzz
];
tests.map(e => e.replace(re, '$1$2:$3$4 - $5$6:$7$8'))
+7 495 5554321
сделает +74:95 - 55:54321
Math.round(20 / 3) === 7 // 7 занесли в массив результата
20 - 7 = 13
// далее повторяем с 13 и делим уже на 3 - 1 === 2
Math.round(13 / 2) === 7 // 7 идёт в результат
13 - 7 === 6
// далее повторяем с 6 и делить надо бы на 2 - 1 === 1
// т.е. осталось одно число в результат. Просто вписываем туда остаток 6
0.137456
?function split(n, divisor, q, result) {
q = q || 1;
result = result || [];
const m = q * Math.round(n / divisor / q);
result.push(m);
n -= m;
if( --divisor > 1) return split(n, divisor, q, result);
else {
result.push(n);
return result.sort((a,b) => a - b); // сортировка по возрастанию, на всякий случай
}
}
split(20, 3) // [6, 7, 7]
split(20, 3, 0.1) // [6.6000000000000005, 6.7, 6.7]
split(27.8, 4, 0.1) // [6.9, 6.9, 7, 7]
photos="188241464_456240492"
и обязательными стандартными v
и aсcess_token
. date
возвращается помимо поля #text
ещё поле uts
– unix timestamp. Удобнее использовать его. Вместо var date = value["date"]["#text"];
как-то так:var date = new Date(1000 * parseInt(value["date"]["uts"])); // дата-время из трека
var now = new Date(); // сейчас
// теперь сравнивайте две даты
var diff = Math.floor((now - date) / 1000); // прошло секунд
var when = '';
if( diff < 3600) {
when = '' + Math.floor(diff / 60) + ' минут назад';
} else if( diff < 86400) {
when = '' + Math.floor(diff / 3600) + ' часов назад';
} else if( diff < (7 * 86400)) {
when = '' + Math.floot(diff / 86400) + ' дней назад';
} // ... и так далее
-c:a pcm_s16le -f s16le -ar 48000 -ac 2 ... audio.pcm
, видео в ts: -c:v libx264 -bsf:v h264_mp4toannexb -f mpegts ... video.ts
-i "concat:video1.ts|video2.ts"
const result = menuElements.map(item => {
const out = {};
out.key = item.key;
out.title = item.title;
if( item.type) out.type = item.type;
if( item.children) out.children = item.children;
return out;
});
result (2) […]
0: Object { key: "siteSettings", title: "Настройки сайта", children: (1) […] }
1: Object { key: "shopSettings", title: "Настройки магазина", children: (2) […]
}length: 2<prototype>: Array [] _display:76:5