$var = $value ?? "Другое значение";
// еквивалентно
$var = isset($value) ? $value : "Другое значение";
((УСЛОВИЕ) ? ИСТИНА : ЛОЖЬ);
const regex = /([\p{Cyrillic}\p{Latin}\d\.-]{1,64})?\.(?:\x{0440}\x{0444}|ru|su|arpa|info|aero|name|[a-z]{3})/giu;
const str = `http://москва.рф/`;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
$('a[href^="#"]').bind('click.smoothscroll',function (e) {
var target = this.hash,
$target = $(target);
if ( $target.length > 0 ) {
e.preventDefault();
$('html, body').stop().animate({
'scrollTop': $target.offset().top-100
}, 1000, 'swing', function () {
window.location.hash = target;
});
}
});
Это в отдельный метод модели перекидывайте