Пример:
0 ₽
В данном примере считается:
- Заглавная буква - 300 ₽
- Прописная буква - 100 ₽
- Цифра - 200 ₽
- Другой символ - 400 ₽
- Пробел - 50 ₽
HTML:
1 2 |
<input placeholder="Введите слово или предложение" type="text" id="letters"> <span id="result">0 ₽</span> |
JS:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
const formatter = new Intl.NumberFormat('ru-RU', { style: 'currency', currency: 'RUB', minimumFractionDigits: 0 }); function charIsLetter(char) { if (typeof char !== 'string') { return false; } return char.toLowerCase() !== char.toUpperCase(); } $('#letters').on('input',function(){ let strings = $('#letters').val(), i=0, character='', summ = 0, zagl = 300, // Заглавная strok = 100, // Прописная cifr = 200, // Цифрa simbol = 400, // Символ space = 50, // Пробел res = 0; while (i < strings.length){ character = strings.charAt(i); if (character.trim() == '') { res = res + space; } else if (!isNaN(character * 1)){ res = res + cifr; } else if (charIsLetter(character)) { if (character == character.toUpperCase()) { res = res + zagl; } if (character == character.toLowerCase()){ res = res + strok; } } else { res = res + simbol; } i++; } $('#result').text(formatter.format(res)); }); |
Добавить комментарий: