Browse Source

Добавлена работа 8

master
Krio 4 years ago
parent
commit
cb7ffc61f9
  1. 15
      labs/lab8/desc.json
  2. 25
      labs/lab8/main.js

15
labs/lab8/desc.json

@ -1,14 +1,21 @@
{
"number": 8,
"task": "",
"task": "Создайте функцию, которая принимает одну строку в качестве аргумента и возвращает упорядоченный массив, содержащий индексы всех заглавных букв в строке.",
"vars": [
[
{
"name": "",
"desc": "",
"name": "s",
"desc": "Разбираемая строка",
"data": ""
}
],
[
{
"name": "s",
"desc": "Разбираемая строка",
"data": "Мама Мыла Раму"
}
]
],
"complete": false
"complete": true
}

25
labs/lab8/main.js

@ -3,5 +3,28 @@
function main(formName) {
let result = document.getElementById("result");
result.textContent = "Результат: неопределенно";
let s = document.forms[formName].elements[0].value;
if (!(typeof s === "string")) {
result.textContent = "Ошибка: s не является строкой!";
return;
}
result.textContent = "Результат: " + countUpperChars(s);
}
function countUpperChars(s) {
let result = [];
let pattern = /^[A-ZА-Я]+$/;
Array.from(s).forEach( (elem, index) => {
if (pattern.test(elem)) {
result.push(index);
}
});
if (result.length == 0) {
return "заглавные буквы отсутствуют";
} else {
return result;
}
}

Loading…
Cancel
Save