Size: a a a

JavaScript Noobs — сообщество новичков

2020 July 09

ʙ

ʙᴀᴋʜʀᴏᴍ in JavaScript Noobs — сообщество новичков
Инетересно. Спасибо
источник

A

AntiPlayer in JavaScript Noobs — сообщество новичков
ʙᴀᴋʜʀᴏᴍ
Посоветуйте либу. Нужно солить/изменить значение и из него обратно получить изначальное значение
источник

P

Polsovatelsetiintern... in JavaScript Noobs — сообщество новичков
привет всем, кто может помочь пожалуйста, как занести значения в  input и чтобы менялись когда ползунок двигается . https://jsfiddle.net/a3m5Ljsf/13/
закомментировал дивы, значения брались с дивов, не могу переделать под input
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
ребят как можно оптимизировать
const getHashTag = (string) => {
   if(string.length <= 0) {
       return false;
   } else if(string.length > 100) {
       return false;
   } else {
       const hashName = string.replace(/[^0-9а-яА-Я\s]/g, '')
                               .replace(/[0-9а-яА-Я]/g, word => word = word.toLowerCase())
                               .replace(/(?:^|\s)[0-9а-яА-Я]/g, sym => sym.toUpperCase())
                               .replace(/\s/g, '');
       const newHashTag = '#' + hashName;
       return newHashTag
   }

}
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
функция принимает любую строку и выдает хештег
источник

D

Danila in JavaScript Noobs — сообщество новичков
Михаил Гришин
функция принимает любую строку и выдает хештег
Какой?
источник

D

Danila in JavaScript Noobs — сообщество новичков
По какому принципу?
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
- строка должна начинаться с символа #;
- каждое слово должно начинаться с прописной буквы, все остальные буквы строчные;
- функция должна возвращать false, если длина хэштега превышает 100 символов или равна 0;
- хэштег может содержать только буквы, цифры и символ #.

Пример:

let res = getHashTag('Пример НОВОГО ""хэштега""');
console.log(res); // #ПримерНовогоХэштега"
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
Михаил Гришин
ребят как можно оптимизировать
const getHashTag = (string) => {
   if(string.length <= 0) {
       return false;
   } else if(string.length > 100) {
       return false;
   } else {
       const hashName = string.replace(/[^0-9а-яА-Я\s]/g, '')
                               .replace(/[0-9а-яА-Я]/g, word => word = word.toLowerCase())
                               .replace(/(?:^|\s)[0-9а-яА-Я]/g, sym => sym.toUpperCase())
                               .replace(/\s/g, '');
       const newHashTag = '#' + hashName;
       return newHashTag
   }

}
это работает, но я чувствую что можно сделать меньше кода и понятнее
источник

K

Kirill in JavaScript Noobs — сообщество новичков
Михаил Гришин
ребят как можно оптимизировать
const getHashTag = (string) => {
   if(string.length <= 0) {
       return false;
   } else if(string.length > 100) {
       return false;
   } else {
       const hashName = string.replace(/[^0-9а-яА-Я\s]/g, '')
                               .replace(/[0-9а-яА-Я]/g, word => word = word.toLowerCase())
                               .replace(/(?:^|\s)[0-9а-яА-Я]/g, sym => sym.toUpperCase())
                               .replace(/\s/g, '');
       const newHashTag = '#' + hashName;
       return newHashTag
   }

}
У тебя первое и второе условие возвращают одно и то же, можно вместо else if, использовать ||
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
о точн чет не подумал, пасиб
источник

D

Danila in JavaScript Noobs — сообщество новичков
Михаил Гришин
- строка должна начинаться с символа #;
- каждое слово должно начинаться с прописной буквы, все остальные буквы строчные;
- функция должна возвращать false, если длина хэштега превышает 100 символов или равна 0;
- хэштег может содержать только буквы, цифры и символ #.

Пример:

let res = getHashTag('Пример НОВОГО ""хэштега""');
console.log(res); // #ПримерНовогоХэштега"
const createHashTag = (string) => {

 const hashName = string.replace(/[^0-9а-яА-Я\s]/g, '')
   .split(' ')
   .map(word => word[0].toUpperCase() + word.slice(1).toLowerCase())
   .join('');

 if (hashName.length <= 0 || hashName.length > 100) return false;
 return '#' + hashName
}
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
а join получается добавляет слово
источник

D

Danila in JavaScript Noobs — сообщество новичков
Danila
const createHashTag = (string) => {

 const hashName = string.replace(/[^0-9а-яА-Я\s]/g, '')
   .split(' ')
   .map(word => word[0].toUpperCase() + word.slice(1).toLowerCase())
   .join('');

 if (hashName.length <= 0 || hashName.length > 100) return false;
 return '#' + hashName
}
нет, join объединяет массив в строку
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
а точн
источник

D

Danila in JavaScript Noobs — сообщество новичков
Я её перед этим разделил на массив слов через сплит
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
круто спасибо, поначалу тоже думал про сплит и мап, но так как с регулярными выражениями вообще опыта нет, решил вариант полегче написать, а потом улучшать )
источник

А

Артем in JavaScript Noobs — сообщество новичков
Ребят, написал
e.preventDefault();
в функции, а оно все равно перезагружает страницу на onSubmit

Что не так?
источник

D

Danila in JavaScript Noobs — сообщество новичков
Артем
Ребят, написал
e.preventDefault();
в функции, а оно все равно перезагружает страницу на onSubmit

Что не так?
Что-то не так или не там написал же
источник

МГ

Михаил Гришин... in JavaScript Noobs — сообщество новичков
Артем
Ребят, написал
e.preventDefault();
в функции, а оно все равно перезагружает страницу на onSubmit

Что не так?
скинь скрин функции
источник