Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.03.2020, 22:02
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

Сократить запись
У меня есть функция которая подставляет последние буквы в слова в зависимости от результата
Например
осталось 1 минуТА
осталось 2 минуТЫ
осталось 6 минуТ


let endingMinut = "";
let endingMinut_1 = "а";
let endingMinut_2 = "ы";

function endingMinutFun(){
if(rezult_2==1){
endingMinut = endingMinut_1;
}
else if(rezult_2>=2&&rezult_2<=4){
endingMinut = endingMinut_2;
}
else if(rezult_2>=5&&rezult_2<=20){
endingMinut = endingMinut;
}
if(rezult_2==21){
endingMinut = endingMinut_1;
}
else if(rezult_2>=22&&rezult_2<=24){
endingMinut = endingMinut_2;
}
else if(rezult_2>=25&&rezult_2<=30){
endingMinut = endingMinut;
}
}
endingMinutFun();

И что бы сделать на всю минуту нужно прописать полностью до шести десятков.
Ответить с цитированием
  #2 (permalink)  
Старый 18.03.2020, 22:17
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

А можете кратко объяснить что тут
Ответить с цитированием
  #3 (permalink)  
Старый 18.03.2020, 22:17
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

Использовать либу на все случае жизни.

Ну либо вырвать прям из той либы:
function pluralize(count, one, two, five) {
  count = Math.floor(Math.abs(count)) % 100;

  if (count > 10 && count < 20) 
    return five;

  count = count % 10;

  if (1 === count) 
    return one; 

  if (count >= 2 && count <= 4) 
    return two; 

  return five;
}

const minutes = ['минута', 'минуты', 'минут'];


alert(
  [ 1, 2, 6]
  .map(i => i + ' ' + pluralize(i, ...minutes))
  .join('\n')
);
__________________
29375, 35

Последний раз редактировалось Aetae, 18.03.2020 в 22:26.
Ответить с цитированием
  #4 (permalink)  
Старый 18.03.2020, 22:25
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068



функция склонения слов

таймер до нового года осталось

Последний раз редактировалось рони, 18.03.2020 в 22:32.
Ответить с цитированием
  #5 (permalink)  
Старый 18.03.2020, 22:28
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,492

Сергей Ракипов, заменил на более понятную. (в предыдущей было то же самое в принципе)
__________________
29375, 35
Ответить с цитированием
  #6 (permalink)  
Старый 19.03.2020, 11:52
Новичок на форуме
Отправить личное сообщение для antonrep11n Посмотреть профиль Найти все сообщения от antonrep11n
 
Регистрация: 19.03.2020
Сообщений: 1

Спасибо большое! Кстати, ну на моем ведре запускаются автоматы с выводом денег на телефон Андроид без особого труда. Хотя у меня телефон не очень крутой.

Последний раз редактировалось antonrep11n, 23.03.2020 в 11:53.
Ответить с цитированием
  #7 (permalink)  
Старый 26.03.2020, 09:03
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

А как можно сократить такую запись

div[2].style.background = "teal";
div[2].style.padding = "10px";
div[2].style.color = "#fff";
Ответить с цитированием
  #8 (permalink)  
Старый 26.03.2020, 09:19
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,122

Сообщение от Сергей Ракипов Посмотреть сообщение
А как можно сократить такую запись
div[2].style.background = "teal";
div[2].style.padding = "10px";
div[2].style.color = "#fff";
Все эти стили оформить в css-классе... Потом просто назначить этот класс элементу.
.test {
background: teal;
padding: 10px;
color: #fff;
}

div[2].classList.add('test')
Ответить с цитированием
  #9 (permalink)  
Старый 26.03.2020, 09:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сергей Ракипов,
<!DOCTYPE html>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  div{
      width: 100px;
      height: 100px;
      border: 1px solid #0000FF;
  }

  </style>

</head>
<body>
<div>0</div>
<div>1</div>
<div>2</div>
<script>
   const div = document.querySelectorAll('div');
   const opt = {backgroundColor : 'teal', padding : '10px', color : '#FFFFFF'};
   Object.assign(div[2].style, opt);
</script>
</body>
</html>
Ответить с цитированием
  #10 (permalink)  
Старый 26.03.2020, 09:28
Профессор
Отправить личное сообщение для Сергей Ракипов Посмотреть профиль Найти все сообщения от Сергей Ракипов
 
Регистрация: 01.06.2010
Сообщений: 651

Спасибо
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись видео с экрана prog77 Библиотеки/Тулкиты/Фреймворки 5 10.02.2020 18:31
помогите пожалуйста сократить css sovsem-nub (X)HTML/CSS 7 18.08.2016 20:17
getUserMedia() как отследить последующие изменения разрешений на запись? Amateur Элементы интерфейса 0 20.10.2015 22:30
Store - просто удалить запись Infarch ExtJS 1 12.08.2014 17:46
Можно ли сократить такую запись KonstantinK Элементы интерфейса 10 14.11.2011 21:50