Skip to content

Commit d5656a8

Browse files
создала три функции: на проверку длины строки, на палиндром, на извлечение чисел из строки
1 parent f99c5fd commit d5656a8

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

js/functions.js

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
const checkString = (string = '', maxLength = 1) => string.length <= maxLength;
2+
3+
const isPolindrom = function (string = '') {
4+
// если в параметры не передать значение, будет ошибка от replaceAll, поэтому стоит default
5+
6+
const normalString = string.replaceAll(' ', '').toLowerCase();
7+
let newString = '';
8+
for (let i = normalString.length - 1; i >= 0; i--) {
9+
newString += normalString[i];
10+
}
11+
return newString === normalString;
12+
};
13+
14+
// const palindrome = function (string = '') {
15+
// const normalString = string.replaceAll(' ', '').toLowerCase();
16+
// const reverseString = normalString.split('').reverse().join('');
17+
// return reverseString === normalString;
18+
// };
19+
20+
// const palindrome = (string = '') => {
21+
// const normalString = string.replace(/\s+/g, '').toLowerCase();
22+
// return normalString === [...normalString].reverse().join('');
23+
// };
24+
25+
26+
const pullNumbers = function (string) {
27+
let newString = '';
28+
string = string.toString(); //зачем делать из строки строку?
29+
30+
for (let i = 0; i <= string.length; i++) {
31+
const stringInNumber = parseInt(string[i], 10);
32+
if (!Number.isNaN(stringInNumber)) {
33+
newString += string[i];
34+
}
35+
}
36+
return newString === '' ? NaN : Number(newString);
37+
};
38+
39+
// function stringToNumber(str) {
40+
// return Number(
41+
// [...str].filter((item) => !isNaN(parseInt(item, 10))).join('') || NaN
42+
// );
43+
// }
44+
45+
// const stringToNumber = (string = '') => Math.abs(parseInt(string.replace(/\D+/g, ''), 10));
46+
47+
48+
checkString('jkmuf', 5);
49+
50+
isPolindrom('fv df fd vfd');
51+
52+
pullNumbers('dfjqwd6734');

0 commit comments

Comments
 (0)