static
с текущей директорией как ROOT_PATH
без параметров, либо указать путь к нужной директории ROOT_PATH
последним параметром. По умолчанию сервер запустится на интерфейсе 0.0.0.0:8080
, указать можно параметром -a <ip>:<port>
, например, командой static -a 127.0.0.1:3000
вы запустите веб-сервер на порту 3000. Для этого не нужно знаний языков программирования. Ни python, ни javascript, ни node.js. Просто использовать.require('child_process').execSync(`'C:\Program Files\VideoLAN\VLC\vlc.exe' --qt-start-minimized --play-and-exit --qt-notification=0 "D:\path\to\file.mp3"`);
https://имя:пароль@host2.ru/остальная/ссылка?включая=параметры#можно_с_хешем
<script>
// Поиск всех ссылок
document.querySelectorAll('a[href]').forEach(a=>{
// Если у ссылки определенный хост
if(a.hostname == 'host2.ru'){
const credentials = `имя:пароль`; // в этом месте заменить имя и пароль на текущие средствами PHP
// меняем в ссылке https:// на https://имя:пароль@
a.href = a.href.replace(/^(https?):\/\//,'$1://'+credentials+'@');
}
});
</script>
class X { // Класс X
method1(){ // Обычный метод
console.log('method1');
}
static method2(){ // Статичный метод
console.log('method2');
}
}
let x = new X(); // Создание объекта x класса X
x.method1(); // Вызов обычного метода через имя объекта
X.method2(); // Вызов статичного метода через имя класса
X.prototype.method1(); // Вызов обычного метода через имя класса
x.__proto__.constructor.method2(); // Вызов статичного метода через имя объекта
let date = new Date();
date.setDate(date.getDate()-121); // установим дату в текущую минус 121 день
console.log(date);
let ts = Date.now(); // Количество мс, прошедших с 1 января 1970г.
ts-=121*24*3600*1000; // Вычтем 121 день помножим на 24 часа, помножим на 3600 сек/час, помножим на 1000 мс/сек
let date = new Date(ts); // Создадим новую дату
console.log(date);
let date = new Date('2022-04-13T14:43:00Z');
let months = (Date.now() - date.getTime()) / (30*24*3600*1000);
console.log(`C момента 2022-04-13 прошло ${months.toFixed(1)} месяцев`);
let month;
month = 6.7343423;
month = Math.round(month * 2)/2;
console.log(month); // => 6.5
month = 6.8343423;
month = Math.round(month * 2)/2;
console.log(month); // => 7
sort -g -S500M -o /path/to/output.txt /path/to/input.txt
// Пусть, список будет в строке разделенной вертикальной чертой
"contacts|goods|gallery|reviews|screen".split`|`
// Находим каждый элемент
.map(data=>document.querySelector(`.blocks__item[data-item="${data}"]`))
// Вешаем на элементы событие mouseenter
.forEach(el=>el.addEventListener('mouseenter',e=>{
// Класс активного элемента надо удалить только у активного элемента
document.querySelector`.blocks__item.blocks__item--active`.classList.remove`blocks__item--active`;
// А элементу, вызвавшему это событие надо добавить класс активности
e.target.classList.add`blocks__item--active`;
// Еще где-то какому-то элементу присвоим класс, частично формирующийся из атрибута элемента события
document.querySelector`.blocks__phone-bg`.className = `blocks__phone-bg blocks__phone-bg--${e.target.getAttribute`data-item`}`;
});
// Вот и все!